Date: 05/30/98
- Next message: zeev: "[PHP-DEV] CVS update: php3"
- Previous message: Shane Caraveo: "[PHP-DEV] win32 binary uploaded"
- Next in thread: zeev: "[PHP-DEV] CVS update: php3"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Saturday May 30, 1998 @ 14:01
Author: zeev
Update of /repository/php3
In directory asf:/tmp/cvs-serv7345
Modified Files:
language-parser.y
Log Message:
Support signed scalars in static assignments and function defaults
Index: php3/language-parser.y
diff -c php3/language-parser.y:1.155 php3/language-parser.y:1.156
*** php3/language-parser.y:1.155 Fri May 22 15:18:19 1998
--- php3/language-parser.y Sat May 30 14:01:02 1998
***************
*** 31,37 ****
*/
! /* $Id: language-parser.y,v 1.155 1998/05/22 19:18:19 shane Exp $ */
/*
--- 31,37 ----
*/
! /* $Id: language-parser.y,v 1.156 1998/05/30 18:01:02 zeev Exp $ */
/*
***************
*** 392,402 ****
'$' varname_scalar { get_function_parameter(&$2, BYREF_NONE, NULL _INLINE_TLS); }
| '&' '$' varname_scalar { get_function_parameter(&$3, BYREF_FORCE, NULL _INLINE_TLS); }
| PHP_CONST '$' varname_scalar { get_function_parameter(&$3, BYREF_ALLOW, NULL _INLINE_TLS); }
! | '$' varname_scalar '=' scalar { get_function_parameter(&$2, BYREF_NONE, &$4 _INLINE_TLS); }
| non_empty_parameter_list ',' '$' varname_scalar { get_function_parameter(&$4, BYREF_NONE, NULL _INLINE_TLS); }
| non_empty_parameter_list ',' '&' '$' varname_scalar { get_function_parameter(&$5, BYREF_FORCE, NULL _INLINE_TLS); }
| non_empty_parameter_list ',' PHP_CONST '$' varname_scalar { get_function_parameter(&$5, BYREF_ALLOW, NULL _INLINE_TLS); }
! | non_empty_parameter_list ',' '$' varname_scalar '=' scalar { get_function_parameter(&$4, BYREF_NONE, &$6 _INLINE_TLS); }
;
--- 392,402 ----
'$' varname_scalar { get_function_parameter(&$2, BYREF_NONE, NULL _INLINE_TLS); }
| '&' '$' varname_scalar { get_function_parameter(&$3, BYREF_FORCE, NULL _INLINE_TLS); }
| PHP_CONST '$' varname_scalar { get_function_parameter(&$3, BYREF_ALLOW, NULL _INLINE_TLS); }
! | '$' varname_scalar '=' signed_scalar { get_function_parameter(&$2, BYREF_NONE, &$4 _INLINE_TLS); }
| non_empty_parameter_list ',' '$' varname_scalar { get_function_parameter(&$4, BYREF_NONE, NULL _INLINE_TLS); }
| non_empty_parameter_list ',' '&' '$' varname_scalar { get_function_parameter(&$5, BYREF_FORCE, NULL _INLINE_TLS); }
| non_empty_parameter_list ',' PHP_CONST '$' varname_scalar { get_function_parameter(&$5, BYREF_ALLOW, NULL _INLINE_TLS); }
! | non_empty_parameter_list ',' '$' varname_scalar '=' signed_scalar { get_function_parameter(&$4, BYREF_NONE, &$6 _INLINE_TLS); }
;
***************
*** 431,437 ****
unambiguous_static_assignment:
! scalar { if (GLOBAL(Execute)) $$ = $1; }
| '(' expr ')' { if (GLOBAL(Execute)) $$ = $2; }
;
--- 431,437 ----
unambiguous_static_assignment:
! signed_scalar { if (GLOBAL(Execute)) $$ = $1; }
| '(' expr ')' { if (GLOBAL(Execute)) $$ = $2; }
;
***************
*** 553,558 ****
--- 553,564 ----
| STRING { if (GLOBAL(Execute)) { $$ = $1; COPY_STRING($$); php3_error(E_NOTICE,"'%s' is not a valid constant - assumed to be \"%s\"",$1.value.str.val,$1.value.str.val); } }
| PHP_LINE { if (GLOBAL(Execute)) { $$ = $1; } }
| PHP_FILE { if (GLOBAL(Execute)) { $$ = $1; COPY_STRING($$); } }
+ ;
+
+ signed_scalar:
+ scalar { if (GLOBAL(Execute)) $$ = $1; }
+ | '+' signed_scalar { if (GLOBAL(Execute)) $$ = $2; }
+ | '-' signed_scalar { if (GLOBAL(Execute)) { pval tmp; tmp.value.lval=0; tmp.type=IS_LONG; sub_function(&$$,&tmp,&$2 _INLINE_TLS); } }
;
varname_scalar:
- Next message: zeev: "[PHP-DEV] CVS update: php3"
- Previous message: Shane Caraveo: "[PHP-DEV] win32 binary uploaded"
- Next in thread: zeev: "[PHP-DEV] CVS update: php3"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

