http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54887
Bug #: 54887 Summary: gdb test case failure with mi-var-rtti Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: debug AssignedTo: unassig...@gcc.gnu.org ReportedBy: ar...@linux.vnet.ibm.com Current upstream gcc causes a regression with the gdb test case mi-var-rtti.exp: FAIL: gdb.mi/mi-var-rtti.exp: create varobj for ptr (without RTTI) in use_rtti_for_ptr ... Here's a link to the C++ source: http://sourceware.org/cgi-bin/cvsweb.cgi/~checkout~/src/gdb/testsuite/gdb.mi/mi-var-rtti.cc?rev=1.1&cvsroot=src The test case sets a breakpoint in use_rtti_for_ptr_test() on the last variable declaration ('constPtrConst', line 37) and then advances with 'next' to the return statement. There it tries to access the variable 'ptr', but the 'next' already carried us into the epilogue beyond that variable's lexical block. This is because the line number information now places the return statement _after_ everything else, even after the destructor call for 'd'. I've verified the failure on x86_64 and s390x. The regression was introduced by: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191338