From c8c21a8cd010469fa92d2da4a7029d5c40122a84 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Tue, 26 Mar 2002 18:59:04 +0000 Subject: [PATCH] re PR java/5942 (tree check failure when compiling Classpath with strictfp StrictMath class) Fix for PR java/5942: * parse.y (init_src_parse): Added sanity check. * parse.h (struct parser_ctxt) [modifier_ctx]: Array has 12 elements, not 11. From-SVN: r51398 --- gcc/java/ChangeLog | 7 +++++++ gcc/java/parse.h | 2 +- gcc/java/parse.y | 4 ++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 1605e212458..8549fcb4a7f 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,10 @@ +2002-03-26 Tom Tromey + + Fix for PR java/5942: + * parse.y (init_src_parse): Added sanity check. + * parse.h (struct parser_ctxt) [modifier_ctx]: Array has 12 + elements, not 11. + 2002-03-26 Neil Booth * decl.c (lang_mark_tree): Rename java_mark_tree. diff --git a/gcc/java/parse.h b/gcc/java/parse.h index 1d8bb05ef0f..ded6a7000cf 100644 --- a/gcc/java/parse.h +++ b/gcc/java/parse.h @@ -762,7 +762,7 @@ struct parser_ctxt { /* This section is defined only if we compile jc1 */ #ifndef JC1_LITE - tree modifier_ctx [11]; /* WFL of modifiers */ + tree modifier_ctx [12]; /* WFL of modifiers */ tree class_type; /* Current class */ tree function_decl; /* Current function decl, save/restore */ diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 8cb595e33d9..e8ef2ef6b2b 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -16013,6 +16013,10 @@ init_src_parse () { /* Register roots with the garbage collector. */ ggc_add_tree_root (src_parse_roots, ARRAY_SIZE (src_parse_roots)); + + /* Sanity check; we've been bit by this before. */ + if (ARRAY_SIZE (ctxp->modifier_ctx) != MODIFIER_TK - PUBLIC_TK) + abort (); } -- 2.30.2