pike.git/
src/
svalue.h
Branch:
Tag:
Non-build tags
All tags
No tags
2015-05-21
2015-05-21 15:29:35 by Tobias S. Josefowitz <tobij@tobij.de>
ce832b38d7e6c2a4295779eb87066a0bc86cc04f (
12
lines) (+
8
/-
4
)
[
Show
|
Annotate
]
Branch:
8.1
IS_DESTRUCTED(): detect trampolines in destructed objects
458:
#define IS_UNDEFINED(X) (check_svalue (X), TYPEOF(*(X))==PIKE_T_INT&&SUBTYPEOF(*(X))==NUMBER_UNDEFINED)
-
#define IS_DESTRUCTED(X)
\
-
(((TYPEOF(*(X))
==
PIKE_T_OBJECT)
||
\
-
((TYPEOF(*(X))==PIKE_T_FUNCTION) && \
-
(
SUBTYPEOF
(
*(
X)
)
!
=
FUNCTION
_
BUILTIN)))
&& !(X)->u.object->prog)
+
#define IS_DESTRUCTED(X)
\
+
((TYPEOF(*(X))
==
PIKE_T_OBJECT
&&
!
(
X)->u.object->prog) || \
+
(TYPEOF(*(X))
==
PIKE_T_FUNCTION
&& SUBTYPEOF(*(X
)
)
!= FUNCTION_BUILTIN\
+
&&
(!(X)->u.object->prog
\
+
||
((X)
->u.object->prog
=
=
pike
_
trampoline_program
\
+
&& !(
(struct pike_trampoline *)(
X)->u.object->
storage) \
+
->frame->current_object->
prog)
)))
#define check_destructed(S) \ do{ \