diff options
author | Alexandre Petit-Bianco <apbianco@cygnus.com> | 2000-06-21 18:18:11 +0000 |
---|---|---|
committer | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 2000-06-21 11:18:11 -0700 |
commit | e3cd9945cbe33d50af459b6b4951d3dcb12a33f7 (patch) | |
tree | de169af216d0340bc7b6f2ab32305f0a65e9dff3 /gcc | |
parent | d8c70cd0187fdffbed0318ec94742921f65b2016 (diff) | |
download | gcc-e3cd9945cbe33d50af459b6b4951d3dcb12a33f7.zip gcc-e3cd9945cbe33d50af459b6b4951d3dcb12a33f7.tar.gz gcc-e3cd9945cbe33d50af459b6b4951d3dcb12a33f7.tar.bz2 |
class.c (push_lang_context): TYPE_NAME gets you to the Java types DECLs.
2000-06-20 Alexandre Petit-Bianco <apbianco@cygnus.com>
* class.c (push_lang_context): TYPE_NAME gets you to the Java
types DECLs.
* decl.c (check_goto): Computed gotos assumed OK.
From-SVN: r34635
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/class.c | 16 | ||||
-rw-r--r-- | gcc/cp/decl.c | 5 |
3 files changed, 19 insertions, 8 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index f5b4c31..0699f15 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2000-06-20 Alexandre Petit-Bianco <apbianco@cygnus.com> + + * class.c (push_lang_context): TYPE_NAME gets you to the Java + types DECLs. + * decl.c (check_goto): Computed gotos assumed OK. + 2000-06-20 Jason Merrill <jason@redhat.com> * pt.c (tsubst_decl, case TYPE_DECL): Fix test for TYPE_DECLs diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 33f12b5..387451c 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -5682,14 +5682,14 @@ push_lang_context (name) (See record_builtin_java_type in decl.c.) However, that causes incorrect debug entries if these types are actually used. So we re-enable debug output after extern "Java". */ - DECL_IGNORED_P (java_byte_type_node) = 0; - DECL_IGNORED_P (java_short_type_node) = 0; - DECL_IGNORED_P (java_int_type_node) = 0; - DECL_IGNORED_P (java_long_type_node) = 0; - DECL_IGNORED_P (java_float_type_node) = 0; - DECL_IGNORED_P (java_double_type_node) = 0; - DECL_IGNORED_P (java_char_type_node) = 0; - DECL_IGNORED_P (java_boolean_type_node) = 0; + DECL_IGNORED_P (TYPE_NAME (java_byte_type_node)) = 0; + DECL_IGNORED_P (TYPE_NAME (java_short_type_node)) = 0; + DECL_IGNORED_P (TYPE_NAME (java_int_type_node)) = 0; + DECL_IGNORED_P (TYPE_NAME (java_long_type_node)) = 0; + DECL_IGNORED_P (TYPE_NAME (java_float_type_node)) = 0; + DECL_IGNORED_P (TYPE_NAME (java_double_type_node)) = 0; + DECL_IGNORED_P (TYPE_NAME (java_char_type_node)) = 0; + DECL_IGNORED_P (TYPE_NAME (java_boolean_type_node)) = 0; } else if (name == lang_name_c) { diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 3e949b8..9e06a48 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -5024,6 +5024,11 @@ check_goto (decl) tree bad; struct named_label_list *lab; + /* We can't know where a computed goto is jumping. So we assume + that it's OK. */ + if (! DECL_P (decl)) + return; + /* If the label hasn't been defined yet, defer checking. */ if (! DECL_INITIAL (decl)) { |