diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f4fcc8d06e37c9047eb29f38160f84de7b12a0de..980edbe530b17f0e0a59c7af4b78cfb1cbb73035 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-04-29 Hans-Peter Nilsson <hp@bitrange.com> + + * varasm.c (output_constant_def): Correct test for not calling + ENCODE_SECTION_INFO for INTEGER_CST. + 2002-04-29 Neil Booth <neil@daikokuya.demon.co.uk> * cppexp.c (lex): Move some code to _cpp_parse_expr, but diff --git a/gcc/varasm.c b/gcc/varasm.c index 4dbd09c6d9ea56abbf8463f90ea2e31f34cf2949..8b22e16fe095743f0189a5fad1ff2b043b18107b 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -3284,7 +3284,9 @@ output_constant_def (exp, defer) encoded in it. */ if (! found) { - if (TREE_CODE (exp) == INTEGER_CST) + /* Take care not to invoke ENCODE_SECTION_INFO for constants + which don't have a TREE_CST_RTL. */ + if (TREE_CODE (exp) != INTEGER_CST) ENCODE_SECTION_INFO (exp, true); desc->rtl = rtl;