aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/lex.c
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2009-03-26 15:17:26 +0000
committerAndrew Haley <aph@gcc.gnu.org>2009-03-26 15:17:26 +0000
commit359b867255469491a68466f8d4258aa63ef2ff5c (patch)
tree392b46675f0b09d93fe3d049ece00523cb4af3c4 /gcc/cp/lex.c
parent61238a798636700375ab418bca76689c36cf434d (diff)
downloadgcc-359b867255469491a68466f8d4258aa63ef2ff5c.zip
gcc-359b867255469491a68466f8d4258aa63ef2ff5c.tar.gz
gcc-359b867255469491a68466f8d4258aa63ef2ff5c.tar.bz2
re PR c++/39380 (All programs that link Java and C++ libraries fail when optimized)
2009-03-26 Andrew Haley <aph@redhat.com> PR C++/39380 * decl2.c (possibly_inlined_p): If java exceptions are in use don't inline a decl unless it is explicitly marked inline. * lex.c: (pragma_java_exceptions): New variable. (handle_pragma_java_exceptions): Set pragma_java_exceptions. * cp-tree.h (pragma_java_exceptions): Declare new variable. From-SVN: r145091
Diffstat (limited to 'gcc/cp/lex.c')
-rw-r--r--gcc/cp/lex.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c
index d708b09..66377ff 100644
--- a/gcc/cp/lex.c
+++ b/gcc/cp/lex.c
@@ -81,6 +81,8 @@ 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)
@@ -430,6 +432,7 @@ handle_pragma_java_exceptions (cpp_reader* dfile ATTRIBUTE_UNUSED)
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