pike.git
/
src
/
operators.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/operators.c:1:
/*\ ||| This file a part of Pike, and is copyright by Fredrik Hubinette ||| Pike is distributed as GPL (General Public License) ||| See the files COPYING and DISCLAIMER for more information. \*/ /**/ #include "global.h" #include <math.h>
-
RCSID("$Id: operators.c,v 1.
77
1999/12/15
00
:
52
:
31
grubba Exp $");
+
RCSID("$Id: operators.c,v 1.
78
1999/12/15
01
:
40
:
34
grubba Exp $");
#include "interpret.h" #include "svalue.h" #include "multiset.h" #include "mapping.h" #include "array.h" #include "stralloc.h" #include "opcodes.h" #include "operators.h" #include "language.h" #include "pike_memory.h"
pike.git/src/operators.c:1287:
case T_PROGRAM: { struct program *p; p = program_from_svalue(sp - 1); if (!p) { int args = 2; SIMPLE_BAD_ARG_ERROR("`^", 2, "type"); } type_stack_mark();
-
push_type_int(
sp[
-
1].u.program-
>id);
+
push_type_int(
p
->id);
push_type(0); push_type(T_OBJECT); pop_stack(); push_string(pop_unfinished_type()); sp[-1].type = T_TYPE; stack_swap(); p = program_from_svalue(sp - 1); if (!p) { int args = 2; stack_swap(); SIMPLE_BAD_ARG_ERROR("`^", 1, "type"); } type_stack_mark();
-
push_type_int(
sp[
-
1].u.program-
>id);
+
push_type_int(
p
->id);
push_type(0); push_type(T_OBJECT); pop_stack(); push_string(pop_unfinished_type()); sp[-1].type = T_TYPE; } /* FALL_THROUGH */ case T_TYPE: { /* a ^ b == (a&~b)|(~a&b) */