aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/lex.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2016-10-04 17:32:31 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2016-10-04 17:32:31 +0200
commitbfecd57cd46ac368213f55fc4a3ff67c8c59c5ea (patch)
tree67b42e486b9999f08c29028115ba5ebbee98254b /gcc/cp/lex.c
parentfe8b1e839ca91a61440288049a868944346eef4b (diff)
downloadgcc-bfecd57cd46ac368213f55fc4a3ff67c8c59c5ea.zip
gcc-bfecd57cd46ac368213f55fc4a3ff67c8c59c5ea.tar.gz
gcc-bfecd57cd46ac368213f55fc4a3ff67c8c59c5ea.tar.bz2
extend.texi (Java Exceptions): Remove.
* doc/extend.texi (Java Exceptions): Remove. (java_interface): Remove. cp/ * cp-tree.h (enum cp_tree_index): Remove CPTI_JAVA_*, CPTI_LANG_NAME_JAVA and CPTI_JCLASS. (java_byte_type_node, java_short_type_node, java_int_type_node, java_long_type_node, java_float_type_node, java_double_type_node, java_char_type_node, java_boolean_type_node, lang_name_java, jclass_node): Remove. (enum languages): Remove lang_java. (TYPE_FOR_JAVA): Remove. (struct lang_type_class): Remove java_interface bit-field. (TYPE_JAVA_INTERFACE): Remove. (pragma_java_exceptions): Remove. (check_java_method, build_java_class_ref): Remove prototypes. * name-lookup.c (pushtag_1): Don't set TYPE_FOR_JAVA. * decl2.c (acceptable_java_type, check_java_method): Remove. (import_export_decl): Remove TYPE_FOR_JAVA handling. (build_java_method_aliases): Remove. (c_parse_final_cleanups): Don't call build_java_method_aliases. (possibly_inlined_p): Don't test pragma_java_exceptions. * init.c (build_new_1): Remove TYPE_FOR_JAVA handling. (build_java_class_ref): Remove. * pt.c (maybe_new_partial_specialization, lookup_template_class_1, instantiate_class_template_1): Don't copy TYPE_FOR_JAVA. * except.c (eh_type_info): Remove java type handling. (decl_is_java_type, choose_personality_routine): Remove. (initialize_handler_parm): Don't call choose_personality_routine. (expand_start_catch_block): Don't handle java types. (build_throw): Likewise. * cp-lang.c (cp_eh_personality): Don't handle pragma_java_exceptions. * typeck.c (structural_comptypes): Don't compare TYPE_FOR_JAVA. * call.c (build_over_call): Don't handle TYPE_JAVA_INTERFACE. (java_iface_lookup_fn): Remove. (build_java_interface_fn_ref): Remove. * tree.c (cxx_attribute_table): Remove java_interface. (handle_java_interface_attribute): Remove. * lex.c (pragma_java_exceptions): Remove. (init_cp_pragma): Don't register GCC java_exceptions pragma. (handle_pragma_java_exceptions): Remove. (retrofit_lang_decl): Don't handle lang_name_java. * method.c (implicitly_declare_fn): Don't handle TYPE_FOR_JAVA. * error.c (language_to_string): Don't handle lang_java. * decl.c (record_builtin_java_type): Remove. (initialize_predefined_identifiers): Remove Java. (cxx_init_decl_processing): Remove java_*_type_node. (cp_finish_decl): Don't handle TYPE_FOR_JAVA. (grokfndecl): Likewise. (check_special_function_return_type): Likewise. (grokdeclarator): Don't set TYPE_FOR_JAVA. (grokparms): Don't handle TYPE_FOR_JAVA. (xref_basetypes): Likewise. (check_function_type): Likewise. (finish_constructor_body): Likewise. * mangle.c (write_builtin_type): Don't handle TYPE_FOR_JAVA and java_*_type_node. (write_bare_function_type): Don't handle TYPE_FOR_JAVA. (write_java_integer_type_codes): Remove. * class.c (add_method): Don't handle TYPE_FOR_JAVA. (add_implicitly_declared_members, determine_key_method, finish_struct_1): Likewise. (push_lang_context): Don't handle lang_name_java. testsuite/ * g++.dg/other/java3.C: Remove. * g++.dg/other/java1.C: Remove. * g++.dg/other/error12.C: Remove. * g++.dg/other/java2.C: Remove. * g++.dg/warn/Wnvdtor.C: Remove. * g++.dg/lookup/java1.C: Remove. * g++.dg/lookup/java2.C: Remove. * g++.dg/ext/pr34829.C: Remove. * g++.dg/ext/java-3.C: Remove. * g++.dg/ext/java-1.C: Remove. * g++.dg/ext/java-2.C: Remove. * g++.old-deja/g++.oliva/dwarf2.C: Remove. From-SVN: r240750
Diffstat (limited to 'gcc/cp/lex.c')
-rw-r--r--gcc/cp/lex.c19
1 files changed, 0 insertions, 19 deletions
diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c
index 43827e5..eec8b5d 100644
--- a/gcc/cp/lex.c
+++ b/gcc/cp/lex.c
@@ -37,7 +37,6 @@ static void handle_pragma_vtable (cpp_reader *);
static void handle_pragma_unit (cpp_reader *);
static void handle_pragma_interface (cpp_reader *);
static void handle_pragma_implementation (cpp_reader *);
-static void handle_pragma_java_exceptions (cpp_reader *);
static void init_operators (void);
static void copy_lang_type (tree);
@@ -71,9 +70,6 @@ struct impl_files
};
static struct impl_files *impl_file_chain;
-
-/* True if we saw "#pragma GCC java_exceptions". */
-bool pragma_java_exceptions;
void
cxx_finish (void)
@@ -210,7 +206,6 @@ init_cp_pragma (void)
c_register_pragma (0, "implementation", handle_pragma_implementation);
c_register_pragma ("GCC", "interface", handle_pragma_interface);
c_register_pragma ("GCC", "implementation", handle_pragma_implementation);
- c_register_pragma ("GCC", "java_exceptions", handle_pragma_java_exceptions);
}
/* TRUE if a code represents a statement. */
@@ -427,18 +422,6 @@ handle_pragma_implementation (cpp_reader* /*dfile*/)
}
}
-/* Indicate that this file uses Java-personality exception handling. */
-static void
-handle_pragma_java_exceptions (cpp_reader* /*dfile*/)
-{
- tree x;
- if (pragma_lex (&x) != CPP_EOF)
- warning (0, "junk at end of #pragma GCC java_exceptions");
-
- choose_personality_routine (lang_java);
- pragma_java_exceptions = true;
-}
-
/* Issue an error message indicating that the lookup of NAME (an
IDENTIFIER_NODE) failed. Returns the ERROR_MARK_NODE. */
@@ -580,8 +563,6 @@ retrofit_lang_decl (tree t)
SET_DECL_LANGUAGE (t, lang_cplusplus);
else if (current_lang_name == lang_name_c)
SET_DECL_LANGUAGE (t, lang_c);
- else if (current_lang_name == lang_name_java)
- SET_DECL_LANGUAGE (t, lang_java);
else
gcc_unreachable ();