pike.git/
src/
language.yacc
Branch:
Tag:
Non-build tags
All tags
No tags
2004-03-18
2004-03-18 14:45:34 by Henrik Grubbström (Grubba) <grubba@grubba.org>
327118555ecd271415f4c80f0294bf6728a550ec (
37
lines) (+
33
/-
4
)
[
Show
|
Annotate
]
Branch:
7.9
Bugfix for errors in lambda arguments.
Rev: src/language.yacc:1.334
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: language.yacc,v 1.
333
2004/03/
17
10
:
30
:
37
grubba Exp $
+
|| $Id: language.yacc,v 1.
334
2004/03/
18
14
:
45
:
34
grubba Exp $
*/ %pure_parser
113:
/* This is the grammar definition of Pike. */ #include "global.h"
-
RCSID("$Id: language.yacc,v 1.
333
2004/03/
17
10
:
30
:
37
grubba Exp $");
+
RCSID("$Id: language.yacc,v 1.
334
2004/03/
18
14
:
45
:
34
grubba Exp $");
#ifdef HAVE_MEMORY_H #include <memory.h> #endif
775:
0, OPT_EXTERNAL_DEPEND|OPT_SIDE_EFFECT);
+
fprintf(stderr, "%s:%d: current_function_number: %d\n",
+
__FILE__, __LINE__,
+
Pike_compiler->compiler_frame->current_function_number);
+
Pike_compiler->varargs=0; if ($1 & ID_VARIANT) {
1931:
#endif /* LAMBDA_DEBUG */ if(Pike_compiler->compiler_pass == 2) Pike_compiler->compiler_frame->current_function_number=isidentifier(name);
+
+
fprintf(stderr, "%s:%d: current_function_number: %d\n",
+
__FILE__, __LINE__,
+
Pike_compiler->compiler_frame->current_function_number);
+
f=dooptcode(name, $7, type,
1954:
free_node ($2); pop_compiler_frame(); }
-
| TOK_LAMBDA push_compiler_frame1 error
+
| TOK_LAMBDA
line_number_info
push_compiler_frame1 error
{ pop_compiler_frame(); $$ = mkintnode(0);
-
+
COPY_LINE_NUMBER_INFO($$, $2);
+
free_node($2);
} ;
2024:
} Pike_compiler->varargs=0; Pike_compiler->compiler_frame->current_function_number=id;
+
+
fprintf(stderr, "%s:%d: current_function_number: %d\n",
+
__FILE__, __LINE__,
+
Pike_compiler->compiler_frame->current_function_number);
n=0; if(Pike_compiler->compiler_pass > 1 && (i=ID_FROM_INT(Pike_compiler->new_program, id)))
2160:
} Pike_compiler->varargs=0; Pike_compiler->compiler_frame->current_function_number=id;
+
+
fprintf(stderr, "%s:%d: current_function_number: %d\n",
+
__FILE__, __LINE__,
+
Pike_compiler->compiler_frame->current_function_number);
n=0; if(Pike_compiler->compiler_pass > 1 && (i=ID_FROM_INT(Pike_compiler->new_program, id)))
2322:
0, OPT_SIDE_EFFECT);
+
fprintf(stderr, "%s:%d: current_function_number: %d\n",
+
__FILE__, __LINE__,
+
Pike_compiler->compiler_frame->current_function_number);
+
Pike_compiler->varargs = 0; /* Third: Generate the initialization code.
2956:
| m_expr_list2 ',' error ;
-
assoc_pair: expr0 expected_colon expr0 { $$=mknode(F_ARG_LIST,$1,$3); }
+
assoc_pair: expr0 expected_colon expr0
+
{
+
$$=mknode(F_ARG_LIST,$1,$3);
+
}
| expr0 expected_colon error { free_node($1); $$=0; } ;
3900:
Pike_fatal("Stack error (underflow)\n"); #endif
+
fprintf(stderr, "YYERROR: %s\n", str);
+
if (Pike_compiler->num_parse_error > 20) return; Pike_compiler->num_parse_error++; cumulative_parse_error++;