pike.git/
src/
pike_types.c
Branch:
Tag:
Non-build tags
All tags
No tags
2004-08-16
2004-08-16 16:53:05 by Henrik Grubbström (Grubba) <grubba@grubba.org>
51922bd36a9678addfe727abad582a02417b6518 (
35
lines) (+
15
/-
20
)
[
Show
|
Annotate
]
Branch:
7.9
Some minor cleanups.
Rev: src/pike_types.c:1.236
2:
|| This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
-
|| $Id: pike_types.c,v 1.
235
2004/08/16 16:
21
:
08
mast
Exp $
+
|| $Id: pike_types.c,v 1.
236
2004/08/16 16:
53
:
05
grubba
Exp $
*/ #include "global.h"
-
RCSID("$Id: pike_types.c,v 1.
235
2004/08/16 16:
21
:
08
mast
Exp $");
+
RCSID("$Id: pike_types.c,v 1.
236
2004/08/16 16:
53
:
05
grubba
Exp $");
#include <ctype.h> #include "svalue.h" #include "pike_types.h"
2676:
/* object(* 0) matches any object */ if(!a->cdr || !b->cdr) break;
+
/* object(* x) =? object(* x) */
+
if (a->cdr == b->cdr) break;
+
/* object(x *) =? object(x *) */ if(TEST_COMPAT(7,4) && a->car == b->car) {
2683:
if(a->car) { /* object(1 x) =? object(1 x) */
-
if(a->cdr
!= b->cdr)
return 0;
+
return 0;
}else{ /* object(0 *) =? object(0 *) */ break; } }
-
+
/* Note: In Pike 7.4 and earlier the following was only done
+
* when a->car != b->car.
+
*/
{ struct program *ap,*bp; ap = id_to_program(CDR_TO_INT(a));
2699:
implements_mode = 0;
-
if (TEST_COMPAT(7,4)) {
-
if(a->car)
-
{
+
if (!is_compatible(implements_a=ap,implements_b=bp)) return 0;
-
}else{
-
if(!is_compatible(implements_a=bp,implements_b=ap))
-
return 0;
+
}
-
}
-
else {
-
if (!is_compatible(implements_a=ap,implements_b=bp))
-
return 0;
-
}
-
}
+
break; case T_INT: