From bd890911dac4a201cb08c54ad5a7444b7306151d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marcin=20Ko=C5=9Bcielnicki?= Date: Mon, 5 Oct 2015 16:57:15 +0200 Subject: [PATCH] Make debug_msg.sh more open-minded about line numbers (needed for s390). gold/ * testsuite/debug_msg.sh: Accept more fuzz in line numbers. --- gold/ChangeLog | 4 ++++ gold/testsuite/debug_msg.sh | 38 +++++++++++++++++++------------------- 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/gold/ChangeLog b/gold/ChangeLog index 71bee61..3cb9f37 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,5 +1,9 @@ 2015-10-28 Marcin Kościelnicki + * testsuite/debug_msg.sh: Accept more fuzz in line numbers. + +2015-10-28 Marcin Kościelnicki + PR gold/18959 * stringpool.cc (Stringpool_template::new_key_offset): Align all strings, even zero-length. diff --git a/gold/testsuite/debug_msg.sh b/gold/testsuite/debug_msg.sh index 54c72f1..b556d8c 100755 --- a/gold/testsuite/debug_msg.sh +++ b/gold/testsuite/debug_msg.sh @@ -64,8 +64,8 @@ check debug_msg.err "debug_msg.o:debug_msg.cc:badref1: error: undefined referenc # file recorded in the objects. check debug_msg.err ".*/debug_msg.cc:50: error: undefined reference to 'undef_fn1()'" check debug_msg.err ".*/debug_msg.cc:55: error: undefined reference to 'undef_fn2()'" -check debug_msg.err ".*/debug_msg.cc:43: error: undefined reference to 'undef_fn1()'" -check debug_msg.err ".*/debug_msg.cc:44: error: undefined reference to 'undef_fn2()'" +check debug_msg.err ".*/debug_msg.cc:4[356]: error: undefined reference to 'undef_fn1()'" +check debug_msg.err ".*/debug_msg.cc:4[456]: error: undefined reference to 'undef_fn2()'" if test "$DEFAULT_TARGET" != "powerpc" then check debug_msg.err ".*/debug_msg.cc:.*: error: undefined reference to 'undef_int'" @@ -74,7 +74,7 @@ fi # Check we detected the ODR (One Definition Rule) violation. check debug_msg.err ": symbol 'Ordering::operator()(int, int)' defined in multiple places (possible ODR violation):" check debug_msg.err "odr_violation1.cc:6" -check debug_msg.err "odr_violation2.cc:1[25]" +check debug_msg.err "odr_violation2.cc:1[256]" # Check we don't have ODR false positives: check_missing debug_msg.err "OdrDerived::~OdrDerived()" @@ -84,11 +84,11 @@ check_missing debug_msg.err "__adjust_heap" # still flag it for C++ symbols since those are more likely to be # unintentional. check_missing debug_msg.err ": symbol 'OverriddenCFunction' defined in multiple places (possible ODR violation):" -check_missing debug_msg.err "odr_violation1.cc:16" -check_missing debug_msg.err "odr_violation2.cc:23" +check_missing debug_msg.err "odr_violation1.cc:1[6-8]" +check_missing debug_msg.err "odr_violation2.cc:2[3-5]" check debug_msg.err ": symbol 'SometimesInlineFunction(int)' defined in multiple places (possible ODR violation):" -check debug_msg.err "debug_msg.cc:68" -check debug_msg.err "odr_violation2.cc:2[78]" +check debug_msg.err "debug_msg.cc:6[89]" +check debug_msg.err "odr_violation2.cc:2[7-9]" # Check for the same error messages when using --compressed-debug-sections. if test -r debug_msg_cdebug.err @@ -98,23 +98,23 @@ then check debug_msg_cdebug.err "debug_msg_cdebug.o:debug_msg.cc:badref1: error: undefined reference to 'undef_int'" check debug_msg_cdebug.err ".*/debug_msg.cc:50: error: undefined reference to 'undef_fn1()'" check debug_msg_cdebug.err ".*/debug_msg.cc:55: error: undefined reference to 'undef_fn2()'" - check debug_msg_cdebug.err ".*/debug_msg.cc:43: error: undefined reference to 'undef_fn1()'" - check debug_msg_cdebug.err ".*/debug_msg.cc:44: error: undefined reference to 'undef_fn2()'" + check debug_msg_cdebug.err ".*/debug_msg.cc:4[356]: error: undefined reference to 'undef_fn1()'" + check debug_msg_cdebug.err ".*/debug_msg.cc:4[456]: error: undefined reference to 'undef_fn2()'" if test "$DEFAULT_TARGET" != "powerpc" then check debug_msg_cdebug.err ".*/debug_msg.cc:.*: error: undefined reference to 'undef_int'" fi check debug_msg_cdebug.err ": symbol 'Ordering::operator()(int, int)' defined in multiple places (possible ODR violation):" check debug_msg_cdebug.err "odr_violation1.cc:6" - check debug_msg_cdebug.err "odr_violation2.cc:1[25]" + check debug_msg_cdebug.err "odr_violation2.cc:1[256]" check_missing debug_msg_cdebug.err "OdrDerived::~OdrDerived()" check_missing debug_msg_cdebug.err "__adjust_heap" check_missing debug_msg_cdebug.err ": symbol 'OverriddenCFunction' defined in multiple places (possible ODR violation):" - check_missing debug_msg_cdebug.err "odr_violation1.cc:16" - check_missing debug_msg_cdebug.err "odr_violation2.cc:23" + check_missing debug_msg_cdebug.err "odr_violation1.cc:1[6-8]" + check_missing debug_msg_cdebug.err "odr_violation2.cc:2[3-5]" check debug_msg_cdebug.err ": symbol 'SometimesInlineFunction(int)' defined in multiple places (possible ODR violation):" - check debug_msg_cdebug.err "debug_msg.cc:68" - check debug_msg_cdebug.err "odr_violation2.cc:2[78]" + check debug_msg_cdebug.err "debug_msg.cc:6[89]" + check debug_msg_cdebug.err "odr_violation2.cc:2[7-9]" fi # When linking together .so's, we don't catch the line numbers, but we @@ -124,15 +124,15 @@ check debug_msg_so.err "debug_msg.so: error: undefined reference to 'undef_fn2() check debug_msg_so.err "debug_msg.so: error: undefined reference to 'undef_int'" check debug_msg_so.err ": symbol 'Ordering::operator()(int, int)' defined in multiple places (possible ODR violation):" check debug_msg_so.err "odr_violation1.cc:6" -check debug_msg_so.err "odr_violation2.cc:1[25]" +check debug_msg_so.err "odr_violation2.cc:1[256]" check_missing debug_msg_so.err "OdrDerived::~OdrDerived()" check_missing debug_msg_so.err "__adjust_heap" check_missing debug_msg_so.err ": symbol 'OverriddenCFunction' defined in multiple places (possible ODR violation):" -check_missing debug_msg_so.err "odr_violation1.cc:16" -check_missing debug_msg_so.err "odr_violation2.cc:23" +check_missing debug_msg_so.err "odr_violation1.cc:1[6-8]" +check_missing debug_msg_so.err "odr_violation2.cc:2[3-5]" check debug_msg_so.err ": symbol 'SometimesInlineFunction(int)' defined in multiple places (possible ODR violation):" -check debug_msg_so.err "debug_msg.cc:68" -check debug_msg_so.err "odr_violation2.cc:2[78]" +check debug_msg_so.err "debug_msg.cc:6[89]" +check debug_msg_so.err "odr_violation2.cc:2[7-9]" # These messages shouldn't need any debug info to detect: check debug_msg_ndebug.err "debug_msg_ndebug.so: error: undefined reference to 'undef_fn1()'" -- 2.7.4