[pushed] Add gdb_caching_proc support_nested_function_tests to lib/gdb.exp

Message ID 20191210224607.E04EA20AF6@gnutoolchain-gerrit.osci.io
State New
Headers show
Series
  • [pushed] Add gdb_caching_proc support_nested_function_tests to lib/gdb.exp
Related show

Commit Message

Simon Marchi (Code Review) Dec. 10, 2019, 10:46 p.m.
Sourceware to Gerrit sync has submitted this change.

Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/604
......................................................................

Add gdb_caching_proc support_nested_function_tests to lib/gdb.exp

This commit adds the gdb_caching_proc, support_nested_function_tests,
to lib/gdb.exp.  It tests to see whether or not the C compiler has
support for nested function calls.

gdb/testsuite/ChangeLog:

	* lib/gdb.exp (support_nested_function_tests): New proc.

Change-Id: Ic2c93bc4cc200e07e104a2398f89a9c0514bdc75
---
M gdb/testsuite/ChangeLog
M gdb/testsuite/lib/gdb.exp
2 files changed, 22 insertions(+), 3 deletions(-)



-- 
Gerrit-Project: binutils-gdb
Gerrit-Branch: master
Gerrit-Change-Id: Ic2c93bc4cc200e07e104a2398f89a9c0514bdc75
Gerrit-Change-Number: 604
Gerrit-PatchSet: 2
Gerrit-Owner: Kevin Buettner <kevinb@redhat.com>
Gerrit-Reviewer: Pedro Alves <palves@redhat.com>
Gerrit-MessageType: merged

Patch

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index d3510d4..4b2e132 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,8 +1,12 @@ 
 2019-12-10  Kevin Buettner  <kevinb@redhat.com>
 
-            * lib/gdb.exp (gdb_compile_openmp): New proc.
-            (build_executable_from_specs): Add an "openmp" option.
-            (gdb_compile_pthreads): Add non-executable case.
+	* lib/gdb.exp (support_nested_function_tests): New proc.
+
+2019-12-10  Kevin Buettner  <kevinb@redhat.com>
+
+	* lib/gdb.exp (gdb_compile_openmp): New proc.
+	(build_executable_from_specs): Add an "openmp" option.
+	(gdb_compile_pthreads): Add non-executable case.
 
 2019-12-10  Tom Tromey  <tromey@adacore.com>
 
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index 806e5a0..8b1ec62 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -6395,6 +6395,21 @@ 
     return $supports_schedule_locking
 }
 
+# Return 1 if compiler supports use of nested functions.  Otherwise,
+# return 0.
+
+gdb_caching_proc support_nested_function_tests {
+    # Compile a test program containing a nested function
+    return [gdb_can_simple_compile nested_func {
+	int main () {
+	    int foo () {
+	        return 0;
+	    }
+	    return foo ();
+	}
+    } executable]
+}
+
 # gdb_target_symbol returns the provided symbol with the correct prefix
 # prepended.  (See gdb_target_symbol_prefix, above.)