[gdb/testsuite] Require gnatmake 8 for gdb.ada/rename_subscript_param.exp

Message ID 20190829143754.GA18195@delia
State New, archived
Headers

Commit Message

Tom de Vries Aug. 29, 2019, 2:37 p.m. UTC
  Hi,

When running gdb.ada/rename_subscript_param.exp with gnatmake 7.4.1, we get:
...
FAIL: gdb.ada/rename_subscript_param.exp: print rename_subscript_param_b \
  before changing its value
FAIL: gdb.ada/rename_subscript_param.exp: print rename_subscript_param_b \
  after changing its value
...

The commit last touching the test-case (afcfda091e) states:
...
    The test still fails with old compilers that do not properly
    generate debug info for this renaming:
...

Fix this by requiring at least gnatmake 8 for the test-case.

Tested on x86_64-linux.

OK for trunk?

Thanks,
- Tom

[gdb/testsuite] Require gnatmake 8 for gdb.ada/rename_subscript_param.exp

gdb/testsuite/ChangeLog:

2019-08-29  Tom de Vries  <tdevries@suse.de>

	PR teststuite/24599
	* gdb.ada/rename_subscript_param.exp: Require gnatmake 8.
	* lib/ada.exp (gnatmake_version_at_least): New proc.

---
 gdb/testsuite/gdb.ada/rename_subscript_param.exp |  4 ++++
 gdb/testsuite/lib/ada.exp                        | 19 +++++++++++++++++++
 2 files changed, 23 insertions(+)
  

Comments

Tom de Vries Sept. 13, 2019, 6:08 p.m. UTC | #1
On 29-08-19 16:37, Tom de Vries wrote:
> Hi,
> 
> When running gdb.ada/rename_subscript_param.exp with gnatmake 7.4.1, we get:
> ...
> FAIL: gdb.ada/rename_subscript_param.exp: print rename_subscript_param_b \
>   before changing its value
> FAIL: gdb.ada/rename_subscript_param.exp: print rename_subscript_param_b \
>   after changing its value
> ...
> 
> The commit last touching the test-case (afcfda091e) states:
> ...
>     The test still fails with old compilers that do not properly
>     generate debug info for this renaming:
> ...
> 
> Fix this by requiring at least gnatmake 8 for the test-case.
> 
> Tested on x86_64-linux.
> 
> OK for trunk?
> 

Ping.

Thanks,
- Tom

> [gdb/testsuite] Require gnatmake 8 for gdb.ada/rename_subscript_param.exp
> 
> gdb/testsuite/ChangeLog:
> 
> 2019-08-29  Tom de Vries  <tdevries@suse.de>
> 
> 	PR teststuite/24599
> 	* gdb.ada/rename_subscript_param.exp: Require gnatmake 8.
> 	* lib/ada.exp (gnatmake_version_at_least): New proc.
> 
> ---
>  gdb/testsuite/gdb.ada/rename_subscript_param.exp |  4 ++++
>  gdb/testsuite/lib/ada.exp                        | 19 +++++++++++++++++++
>  2 files changed, 23 insertions(+)
> 
> diff --git a/gdb/testsuite/gdb.ada/rename_subscript_param.exp b/gdb/testsuite/gdb.ada/rename_subscript_param.exp
> index ffcfa50df3..fd8208825a 100644
> --- a/gdb/testsuite/gdb.ada/rename_subscript_param.exp
> +++ b/gdb/testsuite/gdb.ada/rename_subscript_param.exp
> @@ -15,6 +15,10 @@
>  
>  load_lib "ada.exp"
>  
> +if { ![gnatmake_version_at_least 8] } {
> +    return -1
> +}
> +
>  standard_ada_testfile pb30_012
>  
>  if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug]] != "" } {
> diff --git a/gdb/testsuite/lib/ada.exp b/gdb/testsuite/lib/ada.exp
> index 1345c747c5..95f0f525b1 100644
> --- a/gdb/testsuite/lib/ada.exp
> +++ b/gdb/testsuite/lib/ada.exp
> @@ -105,3 +105,22 @@ proc find_ada_tool {tool} {
>  
>      return $result
>  }
> +
> +# Return 1 if gnatmake is at least version $MAJOR.x.x
> +
> +proc gnatmake_version_at_least { major } {
> +    set gnatmake [gdb_find_gnatmake]
> +    set gnatmake [lindex [split $gnatmake] 0]
> +    set output [exec $gnatmake --version]
> +    if { [regexp {GNATMAKE ([^ .]+).([^ .]+).([^ .]+)} $output \
> +	      match gnatmake_major gnatmake_minor gnatmake_micro] } {
> +	if { $gnatmake_major >= $major } {
> +	    return 1
> +	} else {
> +	    return 0
> +	}
> +    }
> +
> +    # Unknown, return 1
> +    return 1
> +}
>
  
Andrew Burgess Sept. 13, 2019, 8:32 p.m. UTC | #2
* Tom de Vries <tdevries@suse.de> [2019-09-13 20:08:52 +0200]:

> On 29-08-19 16:37, Tom de Vries wrote:
> > Hi,
> > 
> > When running gdb.ada/rename_subscript_param.exp with gnatmake 7.4.1, we get:
> > ...
> > FAIL: gdb.ada/rename_subscript_param.exp: print rename_subscript_param_b \
> >   before changing its value
> > FAIL: gdb.ada/rename_subscript_param.exp: print rename_subscript_param_b \
> >   after changing its value
> > ...
> > 
> > The commit last touching the test-case (afcfda091e) states:
> > ...
> >     The test still fails with old compilers that do not properly
> >     generate debug info for this renaming:
> > ...
> > 
> > Fix this by requiring at least gnatmake 8 for the test-case.
> > 
> > Tested on x86_64-linux.
> > 
> > OK for trunk?
> > 
> 
> Ping.

Looks good to me.

Thanks,
Andrew


> 
> Thanks,
> - Tom
> 
> > [gdb/testsuite] Require gnatmake 8 for gdb.ada/rename_subscript_param.exp
> > 
> > gdb/testsuite/ChangeLog:
> > 
> > 2019-08-29  Tom de Vries  <tdevries@suse.de>
> > 
> > 	PR teststuite/24599
> > 	* gdb.ada/rename_subscript_param.exp: Require gnatmake 8.
> > 	* lib/ada.exp (gnatmake_version_at_least): New proc.
> > 
> > ---
> >  gdb/testsuite/gdb.ada/rename_subscript_param.exp |  4 ++++
> >  gdb/testsuite/lib/ada.exp                        | 19 +++++++++++++++++++
> >  2 files changed, 23 insertions(+)
> > 
> > diff --git a/gdb/testsuite/gdb.ada/rename_subscript_param.exp b/gdb/testsuite/gdb.ada/rename_subscript_param.exp
> > index ffcfa50df3..fd8208825a 100644
> > --- a/gdb/testsuite/gdb.ada/rename_subscript_param.exp
> > +++ b/gdb/testsuite/gdb.ada/rename_subscript_param.exp
> > @@ -15,6 +15,10 @@
> >  
> >  load_lib "ada.exp"
> >  
> > +if { ![gnatmake_version_at_least 8] } {
> > +    return -1
> > +}
> > +
> >  standard_ada_testfile pb30_012
> >  
> >  if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug]] != "" } {
> > diff --git a/gdb/testsuite/lib/ada.exp b/gdb/testsuite/lib/ada.exp
> > index 1345c747c5..95f0f525b1 100644
> > --- a/gdb/testsuite/lib/ada.exp
> > +++ b/gdb/testsuite/lib/ada.exp
> > @@ -105,3 +105,22 @@ proc find_ada_tool {tool} {
> >  
> >      return $result
> >  }
> > +
> > +# Return 1 if gnatmake is at least version $MAJOR.x.x
> > +
> > +proc gnatmake_version_at_least { major } {
> > +    set gnatmake [gdb_find_gnatmake]
> > +    set gnatmake [lindex [split $gnatmake] 0]
> > +    set output [exec $gnatmake --version]
> > +    if { [regexp {GNATMAKE ([^ .]+).([^ .]+).([^ .]+)} $output \
> > +	      match gnatmake_major gnatmake_minor gnatmake_micro] } {
> > +	if { $gnatmake_major >= $major } {
> > +	    return 1
> > +	} else {
> > +	    return 0
> > +	}
> > +    }
> > +
> > +    # Unknown, return 1
> > +    return 1
> > +}
> >
  

Patch

diff --git a/gdb/testsuite/gdb.ada/rename_subscript_param.exp b/gdb/testsuite/gdb.ada/rename_subscript_param.exp
index ffcfa50df3..fd8208825a 100644
--- a/gdb/testsuite/gdb.ada/rename_subscript_param.exp
+++ b/gdb/testsuite/gdb.ada/rename_subscript_param.exp
@@ -15,6 +15,10 @@ 
 
 load_lib "ada.exp"
 
+if { ![gnatmake_version_at_least 8] } {
+    return -1
+}
+
 standard_ada_testfile pb30_012
 
 if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug]] != "" } {
diff --git a/gdb/testsuite/lib/ada.exp b/gdb/testsuite/lib/ada.exp
index 1345c747c5..95f0f525b1 100644
--- a/gdb/testsuite/lib/ada.exp
+++ b/gdb/testsuite/lib/ada.exp
@@ -105,3 +105,22 @@  proc find_ada_tool {tool} {
 
     return $result
 }
+
+# Return 1 if gnatmake is at least version $MAJOR.x.x
+
+proc gnatmake_version_at_least { major } {
+    set gnatmake [gdb_find_gnatmake]
+    set gnatmake [lindex [split $gnatmake] 0]
+    set output [exec $gnatmake --version]
+    if { [regexp {GNATMAKE ([^ .]+).([^ .]+).([^ .]+)} $output \
+	      match gnatmake_major gnatmake_minor gnatmake_micro] } {
+	if { $gnatmake_major >= $major } {
+	    return 1
+	} else {
+	    return 0
+	}
+    }
+
+    # Unknown, return 1
+    return 1
+}