Commit 078a76c8 by Mark Mitchell Committed by Mark Mitchell

decl.c (store_parm_decls): Reset immediate_size_expand.

	* decl.c (store_parm_decls): Reset immediate_size_expand.
	(finish_function): Likewise.

From-SVN: r28914
parent b122caab
1999-08-26 Mark Mitchell <mark@codesourcery.com> 1999-08-26 Mark Mitchell <mark@codesourcery.com>
* tree.c (store_parm_decls): Reset immediate_size_expand. * decl.c (store_parm_decls): Reset immediate_size_expand.
(finish_function): Likewise. (finish_function): Likewise.
* tree.c (cplus_unsave_expr_now): Don't return a value. * tree.c (cplus_unsave_expr_now): Don't return a value.
......
...@@ -13232,6 +13232,12 @@ store_parm_decls () ...@@ -13232,6 +13232,12 @@ store_parm_decls ()
/* Initialize RTL machinery. */ /* Initialize RTL machinery. */
init_function_start (fndecl, input_filename, lineno); init_function_start (fndecl, input_filename, lineno);
/* Even though we're inside a function body, we still don't want to
call expand_expr to calculate the size of a variable-sized array.
We haven't necessarily assigned RTL to all variables yet, so it's
not safe to try to expand expressions involving them. */
immediate_size_expand = 0;
get_pending_sizes ();
/* Create a binding level for the parms. */ /* Create a binding level for the parms. */
expand_start_bindings (0); expand_start_bindings (0);
...@@ -13819,6 +13825,12 @@ finish_function (lineno, flags, nested) ...@@ -13819,6 +13825,12 @@ finish_function (lineno, flags, nested)
expand_label (no_return_label); expand_label (no_return_label);
} }
/* We hard-wired immediate_size_expand to zero in
start_function. Expand_function_end will decrement this
variable. So, we set the variable to one here, so that after
the decrement it will remain zero. */
immediate_size_expand = 0;
/* Generate rtl for function exit. */ /* Generate rtl for function exit. */
expand_function_end (input_filename, lineno, 1); expand_function_end (input_filename, lineno, 1);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment