mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-28 18:10:46 +00:00
gdb/testsuite: fix gdb.mi/mi-var-cp.exp with clang
The inline tests in gdb.mi/mi-var-cp.cc were failing when using clang to run the test. This happened because inline tests want to step past the C statements and then run the TCL tests, but in mi-var-cp.cc the statement to be stepped past is "return s2.i;". Since clang links the epilogue information to the return statement, not the closing brace, single-stepping past return had us exiting the function - which made the expressions invalid. This commit fixes this by making the function have 2 C statements, and the return one be after all inline tests, so we know GDB won't leave the function before running the create_varobj tests. Approved-By: Tom Tromey <tom@tromey.com>
This commit is contained in:
@@ -42,7 +42,7 @@ struct S2 : S {};
|
||||
int base_in_reference_test (S2& s2)
|
||||
{
|
||||
/*: BEGIN: base_in_reference :*/
|
||||
return s2.i;
|
||||
int x = s2.i + s2.j;
|
||||
/*:
|
||||
mi_create_varobj "S2" "s2" "create varobj for s2"
|
||||
mi_list_varobj_children "S2" {
|
||||
@@ -62,6 +62,7 @@ int base_in_reference_test (S2& s2)
|
||||
|
||||
:*/
|
||||
/*: END: base_in_reference :*/
|
||||
return x;
|
||||
}
|
||||
|
||||
void base_in_reference_test_main ()
|
||||
|
||||
Reference in New Issue
Block a user