Commit 30e257e5 by Paolo Bonzini Committed by Paolo Bonzini

langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.

2008-03-11  Paolo Bonzini  <bonzini@gnu.org>

        * langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
        * langhooks.h (struct lang_hooks): Delete clear_binding_stack member.
        * toplev.c (compile_file): Don't call it.

fortran:
2008-03-11  Paolo Bonzini  <bonzini@gnu.org>

        * f95-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
        (gfc_be_parse_file): Call clear_binding_stack from here.
	(gfc_clear_binding_stack): Rename to clear_binding_stack.

java:
2008-03-11  Paolo Bonzini  <bonzini@gnu.org>

        * jcf-parse.c (java_parse_file): Assert binding levels are
        left in order.
        * lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, java_clear_binding_stack):
        Delete.

From-SVN: r133115
parent 608766dc
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
* langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
* langhooks.h (struct lang_hooks): Delete clear_binding_stack member.
* toplev.c (compile_file): Don't call it.
2008-03-11 Uros Bizjak <ubizjak@gmail.com> 2008-03-11 Uros Bizjak <ubizjak@gmail.com>
PR middle-end/35526 PR middle-end/35526
......
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
* f95-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
(gfc_be_parse_file): Call clear_binding_stack from here.
(gfc_clear_binding_stack): Rename to clear_binding_stack.
2008-03-09 Paul Thomas <pault@gcc.gnu.org> 2008-03-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35474 PR fortran/35474
......
...@@ -96,7 +96,7 @@ static bool gfc_mark_addressable (tree); ...@@ -96,7 +96,7 @@ static bool gfc_mark_addressable (tree);
void do_function_end (void); void do_function_end (void);
int global_bindings_p (void); int global_bindings_p (void);
void insert_block (tree); void insert_block (tree);
static void gfc_clear_binding_stack (void); static void clear_binding_stack (void);
static void gfc_be_parse_file (int); static void gfc_be_parse_file (int);
static alias_set_type gfc_get_alias_set (tree); static alias_set_type gfc_get_alias_set (tree);
...@@ -111,7 +111,6 @@ static alias_set_type gfc_get_alias_set (tree); ...@@ -111,7 +111,6 @@ static alias_set_type gfc_get_alias_set (tree);
#undef LANG_HOOKS_MARK_ADDRESSABLE #undef LANG_HOOKS_MARK_ADDRESSABLE
#undef LANG_HOOKS_TYPE_FOR_MODE #undef LANG_HOOKS_TYPE_FOR_MODE
#undef LANG_HOOKS_TYPE_FOR_SIZE #undef LANG_HOOKS_TYPE_FOR_SIZE
#undef LANG_HOOKS_CLEAR_BINDING_STACK
#undef LANG_HOOKS_GET_ALIAS_SET #undef LANG_HOOKS_GET_ALIAS_SET
#undef LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE #undef LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE
#undef LANG_HOOKS_OMP_PREDETERMINED_SHARING #undef LANG_HOOKS_OMP_PREDETERMINED_SHARING
...@@ -134,7 +133,6 @@ static alias_set_type gfc_get_alias_set (tree); ...@@ -134,7 +133,6 @@ static alias_set_type gfc_get_alias_set (tree);
#define LANG_HOOKS_MARK_ADDRESSABLE gfc_mark_addressable #define LANG_HOOKS_MARK_ADDRESSABLE gfc_mark_addressable
#define LANG_HOOKS_TYPE_FOR_MODE gfc_type_for_mode #define LANG_HOOKS_TYPE_FOR_MODE gfc_type_for_mode
#define LANG_HOOKS_TYPE_FOR_SIZE gfc_type_for_size #define LANG_HOOKS_TYPE_FOR_SIZE gfc_type_for_size
#define LANG_HOOKS_CLEAR_BINDING_STACK gfc_clear_binding_stack
#define LANG_HOOKS_GET_ALIAS_SET gfc_get_alias_set #define LANG_HOOKS_GET_ALIAS_SET gfc_get_alias_set
#define LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE gfc_omp_privatize_by_reference #define LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE gfc_omp_privatize_by_reference
#define LANG_HOOKS_OMP_PREDETERMINED_SHARING gfc_omp_predetermined_sharing #define LANG_HOOKS_OMP_PREDETERMINED_SHARING gfc_omp_predetermined_sharing
...@@ -268,6 +266,8 @@ gfc_be_parse_file (int set_yydebug ATTRIBUTE_UNUSED) ...@@ -268,6 +266,8 @@ gfc_be_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
gfc_get_errors (&warnings, &errors); gfc_get_errors (&warnings, &errors);
errorcount += errors; errorcount += errors;
warningcount += warnings; warningcount += warnings;
clear_binding_stack ();
} }
...@@ -536,7 +536,7 @@ pushdecl_top_level (tree x) ...@@ -536,7 +536,7 @@ pushdecl_top_level (tree x)
/* Clear the binding stack. */ /* Clear the binding stack. */
static void static void
gfc_clear_binding_stack (void) clear_binding_stack (void)
{ {
while (!global_bindings_p ()) while (!global_bindings_p ())
poplevel (0, 0, 0); poplevel (0, 0, 0);
......
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
* jcf-parse.c (java_parse_file): Assert binding levels are
left in order.
* lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, java_clear_binding_stack):
Delete.
2008-03-02 Jakub Jelinek <jakub@redhat.com> 2008-03-02 Jakub Jelinek <jakub@redhat.com>
* jcf-dump.c (version): Update copyright notice dates. * jcf-dump.c (version): Update copyright notice dates.
......
...@@ -1702,6 +1702,7 @@ java_emit_static_constructor (void) ...@@ -1702,6 +1702,7 @@ java_emit_static_constructor (void)
cgraph_build_static_cdtor ('I', body, DEFAULT_INIT_PRIORITY); cgraph_build_static_cdtor ('I', body, DEFAULT_INIT_PRIORITY);
} }
void void
java_parse_file (int set_yydebug ATTRIBUTE_UNUSED) java_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
{ {
...@@ -1952,6 +1953,7 @@ java_parse_file (int set_yydebug ATTRIBUTE_UNUSED) ...@@ -1952,6 +1953,7 @@ java_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
finish: finish:
/* Arrange for any necessary initialization to happen. */ /* Arrange for any necessary initialization to happen. */
java_emit_static_constructor (); java_emit_static_constructor ();
gcc_assert (global_bindings_p ());
/* Only finalize the compilation unit after we've told cgraph which /* Only finalize the compilation unit after we've told cgraph which
functions have their addresses stored. */ functions have their addresses stored. */
......
...@@ -62,7 +62,6 @@ static bool java_dump_tree (void *, tree); ...@@ -62,7 +62,6 @@ static bool java_dump_tree (void *, tree);
static void dump_compound_expr (dump_info_p, tree); static void dump_compound_expr (dump_info_p, tree);
static bool java_decl_ok_for_sibcall (const_tree); static bool java_decl_ok_for_sibcall (const_tree);
static tree java_get_callee_fndecl (const_tree); static tree java_get_callee_fndecl (const_tree);
static void java_clear_binding_stack (void);
static enum classify_record java_classify_record (tree type); static enum classify_record java_classify_record (tree type);
...@@ -197,9 +196,6 @@ struct language_function GTY(()) ...@@ -197,9 +196,6 @@ struct language_function GTY(())
#undef LANG_HOOKS_GET_CALLEE_FNDECL #undef LANG_HOOKS_GET_CALLEE_FNDECL
#define LANG_HOOKS_GET_CALLEE_FNDECL java_get_callee_fndecl #define LANG_HOOKS_GET_CALLEE_FNDECL java_get_callee_fndecl
#undef LANG_HOOKS_CLEAR_BINDING_STACK
#define LANG_HOOKS_CLEAR_BINDING_STACK java_clear_binding_stack
#undef LANG_HOOKS_SET_DECL_ASSEMBLER_NAME #undef LANG_HOOKS_SET_DECL_ASSEMBLER_NAME
#define LANG_HOOKS_SET_DECL_ASSEMBLER_NAME java_mangle_decl #define LANG_HOOKS_SET_DECL_ASSEMBLER_NAME java_mangle_decl
...@@ -949,14 +945,6 @@ java_get_callee_fndecl (const_tree call_expr) ...@@ -949,14 +945,6 @@ java_get_callee_fndecl (const_tree call_expr)
} }
/* Clear the binding stack. */
static void
java_clear_binding_stack (void)
{
while (!global_bindings_p ())
poplevel (0, 0, 0);
}
static enum classify_record static enum classify_record
java_classify_record (tree type) java_classify_record (tree type)
{ {
......
...@@ -85,7 +85,6 @@ extern void lhd_omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *, ...@@ -85,7 +85,6 @@ extern void lhd_omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *,
#define LANG_HOOKS_INIT hook_bool_void_false #define LANG_HOOKS_INIT hook_bool_void_false
#define LANG_HOOKS_FINISH lhd_do_nothing #define LANG_HOOKS_FINISH lhd_do_nothing
#define LANG_HOOKS_PARSE_FILE lhd_do_nothing_i #define LANG_HOOKS_PARSE_FILE lhd_do_nothing_i
#define LANG_HOOKS_CLEAR_BINDING_STACK lhd_do_nothing
#define LANG_HOOKS_INIT_OPTIONS hook_uint_uint_constcharptrptr_0 #define LANG_HOOKS_INIT_OPTIONS hook_uint_uint_constcharptrptr_0
#define LANG_HOOKS_INITIALIZE_DIAGNOSTICS lhd_initialize_diagnostics #define LANG_HOOKS_INITIALIZE_DIAGNOSTICS lhd_initialize_diagnostics
#define LANG_HOOKS_HANDLE_OPTION hook_int_size_t_constcharptr_int_0 #define LANG_HOOKS_HANDLE_OPTION hook_int_size_t_constcharptr_int_0
...@@ -250,7 +249,6 @@ extern tree lhd_make_node (enum tree_code); ...@@ -250,7 +249,6 @@ extern tree lhd_make_node (enum tree_code);
LANG_HOOKS_INIT, \ LANG_HOOKS_INIT, \
LANG_HOOKS_FINISH, \ LANG_HOOKS_FINISH, \
LANG_HOOKS_PARSE_FILE, \ LANG_HOOKS_PARSE_FILE, \
LANG_HOOKS_CLEAR_BINDING_STACK, \
LANG_HOOKS_GET_ALIAS_SET, \ LANG_HOOKS_GET_ALIAS_SET, \
LANG_HOOKS_EXPAND_EXPR, \ LANG_HOOKS_EXPAND_EXPR, \
LANG_HOOKS_EXPAND_DECL, \ LANG_HOOKS_EXPAND_DECL, \
......
...@@ -294,9 +294,6 @@ struct lang_hooks ...@@ -294,9 +294,6 @@ struct lang_hooks
parsers to dump debugging information during parsing. */ parsers to dump debugging information during parsing. */
void (*parse_file) (int); void (*parse_file) (int);
/* Called immediately after parsing to clear the binding stack. */
void (*clear_binding_stack) (void);
/* Called to obtain the alias set to be used for an expression or type. /* Called to obtain the alias set to be used for an expression or type.
Returns -1 if the language does nothing special for it. */ Returns -1 if the language does nothing special for it. */
alias_set_type (*get_alias_set) (tree); alias_set_type (*get_alias_set) (tree);
......
...@@ -958,10 +958,6 @@ compile_file (void) ...@@ -958,10 +958,6 @@ compile_file (void)
rest_of_compilation for each function). */ rest_of_compilation for each function). */
lang_hooks.parse_file (set_yydebug); lang_hooks.parse_file (set_yydebug);
/* In case there were missing block closers,
get us back to the global binding level. */
lang_hooks.clear_binding_stack ();
/* Compilation is now finished except for writing /* Compilation is now finished except for writing
what's left of the symbol table output. */ what's left of the symbol table output. */
timevar_pop (TV_PARSE); timevar_pop (TV_PARSE);
......
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