pike.git
/
src
/
program.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/program.c:1:
/* || 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: program.c,v 1.
495
2005/05/
26
12:
00
:
56
grubba
Exp $
+
|| $Id: program.c,v 1.
496
2005/05/
30
12:
43
:
04
mast
Exp $
*/ #include "global.h"
-
RCSID("$Id: program.c,v 1.
495
2005/05/
26
12:
00
:
56
grubba
Exp $");
+
RCSID("$Id: program.c,v 1.
496
2005/05/
30
12:
43
:
04
mast
Exp $");
#include "program.h" #include "object.h" #include "dynamic_buffer.h" #include "pike_types.h" #include "stralloc.h" #include "las.h" #include "language.h" #include "lex.h" #include "pike_macros.h" #include "fsort.h"
pike.git/src/program.c:1107:
if(!resolve_cache) resolve_cache=dmalloc_touch(struct mapping *, allocate_mapping(10)); mapping_string_insert(resolve_cache,ident,Pike_sp-1); if(!(SAFE_IS_ZERO(Pike_sp-1) && Pike_sp[-1].subtype==1)) { ret=mkconstantsvaluenode(Pike_sp-1); } pop_stack(); }
-
else
+
else
{
if(Pike_compiler->compiler_pass==2) { if (throw_value.type == T_STRING && !throw_value.u.string->size_shift) { yyerror(throw_value.u.string->str); free_svalue(&throw_value); throw_value.type = T_INT; } else { struct svalue thrown = throw_value; throw_value.type = T_INT;
pike.git/src/program.c:1130:
else yyerror("Error resolving identifier."); push_svalue(&thrown); low_safe_apply_handler("compile_exception", error_handler, compat_handler, 1); if (SAFE_IS_ZERO(sp-1)) yy_describe_exception(&thrown, 0); pop_stack(); free_svalue(&thrown); } }
+
else {
+
struct svalue thrown = throw_value;
+
throw_value.type = T_INT;
+
#ifdef PIKE_DEBUG
+
yywarning ("Ignoring resolv() exception in pass 1:");
+
yy_describe_exception (&thrown, 1);
+
#endif
+
free_svalue (&thrown);
}
-
+
}
+
}
END_CYCLIC(); if(ret) return ret; } return 0; } /*! @decl constant this *! *! Builtin read only variable that evaluates to the current object.