]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Check -fvar-tracking via ada_simple_compile
authorTom Tromey <tromey@adacore.com>
Wed, 12 Feb 2025 17:51:33 +0000 (10:51 -0700)
committerTom Tromey <tromey@adacore.com>
Tue, 4 Mar 2025 14:42:53 +0000 (07:42 -0700)
A couple of Ada tests check whether the C compiler supports
-fvar-tracking.  However, this doesn't really work when using
gnat-llvm, because that will invoke clang under the hood.  This patch
arranges to check gnatmake instead, which is more robust even when
toolchains are mix-and-matched.

gdb/testsuite/gdb.ada/array_return.exp
gdb/testsuite/gdb.ada/finish-large.exp
gdb/testsuite/lib/ada.exp

index d1fc2ac2c980121fe29c87e62020884bd856dd90..fa5dc9c8bd73fb3d351cc9bd71bdd4abab2afb2e 100644 (file)
@@ -21,7 +21,7 @@ standard_ada_testfile p
 
 set opts {}
 lappend opts debug
-if { [have_fvar_tracking] } {
+if { [ada_fvar_tracking] } {
     lappend opts "additional_flags=-fvar-tracking"
 }
 
index b9823d313c4f1206593c7d6815b340a34a9d502a..1ba43fd50bacc089ebcff892dadd138ec96620e1 100644 (file)
@@ -21,7 +21,7 @@ standard_ada_testfile p
 
 set flags {debug}
 
-if {[have_fvar_tracking]} {
+if {[ada_fvar_tracking]} {
   lappend flags "additional_flags=-fvar-tracking"
 }
 
index d9ecb60077e5552b8122245777823fb1170ceed8..c987f9dfaca38c4abc5747b83ec1de19a809303e 100644 (file)
@@ -263,3 +263,8 @@ proc ada_simple_compile {name options} {
     set output [gdb_compile_ada_1 $src $dest executable $options]
     return [expr {[gdb_compile_test_nofail $output] == 1}]
 }
+
+# Return 1 if GNAT supports -fvar-tracking.
+gdb_caching_proc ada_fvar_tracking {} {
+    return [ada_simple_compile fvar_tracking additional_flags=-fvar-tracking]
+}