[PUSHED] gdb/testsuite: compile gdb.linespec/cp-completion-aliases.exp as C++

Message ID 4e545e3f3d600e62ed6522e0ed6ef609a6fe8354.1683024857.git.aburgess@redhat.com
State Committed
Headers
Series [PUSHED] gdb/testsuite: compile gdb.linespec/cp-completion-aliases.exp as C++ |

Commit Message

Andrew Burgess May 2, 2023, 10:54 a.m. UTC
  Noticed in passing that the prepare_for_testing call in
gdb.linespec/cp-completion-aliases.exp does not pass the 'c++' flag,
despite this being a C++ test.

I guess, as the source file has the '.cc' extension, all the compilers
are doing the right thing anyway -- the source file uses templates, so
is definitely being compiled as C++.

I noticed this when I tried to set CXX_FOR_TARGET (but not
CC_FOR_TARGET) and spotted that this script was still using the C
compiler.

Fixed in this commit by adding the 'c++' flag for prepare_for_testing.
---
 gdb/testsuite/gdb.linespec/cp-completion-aliases.exp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


base-commit: b2499d8a40a6de13e9bc88b973a730bdf8b9b032
  

Comments

Tom de Vries May 2, 2023, 1:48 p.m. UTC | #1
On 5/2/23 12:54, Andrew Burgess via Gdb-patches wrote:
> Noticed in passing that the prepare_for_testing call in
> gdb.linespec/cp-completion-aliases.exp does not pass the 'c++' flag,
> despite this being a C++ test.
> 
> I guess, as the source file has the '.cc' extension, all the compilers
> are doing the right thing anyway -- the source file uses templates, so
> is definitely being compiled as C++.
> 
> I noticed this when I tried to set CXX_FOR_TARGET (but not
> CC_FOR_TARGET) and spotted that this script was still using the C
> compiler.
> 
> Fixed in this commit by adding the 'c++' flag for prepare_for_testing.

Hi,

this is an instance of 
https://sourceware.org/bugzilla/show_bug.cgi?id=30380 .

I already had this fixed in a branch, but hadn't had time to submit.

FWIW, it's the top commit of 
https://github.com/vries/gdb/commits/testsuite/old-gcc .

Thanks,
- Tom

> ---
>   gdb/testsuite/gdb.linespec/cp-completion-aliases.exp | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp b/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp
> index 33ad72e6f05..4c3ab7362e9 100644
> --- a/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp
> +++ b/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp
> @@ -20,7 +20,7 @@ load_lib completion-support.exp
>   
>   standard_testfile .cc
>   
> -if {[prepare_for_testing "failed to prepare" $testfile $srcfile {debug}]} {
> +if {[prepare_for_testing "failed to prepare" $testfile $srcfile {debug c++}]} {
>       return -1
>   }
>   
> 
> base-commit: b2499d8a40a6de13e9bc88b973a730bdf8b9b032
  
Andrew Burgess May 5, 2023, 5:04 p.m. UTC | #2
Tom de Vries <tdevries@suse.de> writes:

> On 5/2/23 12:54, Andrew Burgess via Gdb-patches wrote:
>> Noticed in passing that the prepare_for_testing call in
>> gdb.linespec/cp-completion-aliases.exp does not pass the 'c++' flag,
>> despite this being a C++ test.
>> 
>> I guess, as the source file has the '.cc' extension, all the compilers
>> are doing the right thing anyway -- the source file uses templates, so
>> is definitely being compiled as C++.
>> 
>> I noticed this when I tried to set CXX_FOR_TARGET (but not
>> CC_FOR_TARGET) and spotted that this script was still using the C
>> compiler.
>> 
>> Fixed in this commit by adding the 'c++' flag for prepare_for_testing.
>
> Hi,
>
> this is an instance of 
> https://sourceware.org/bugzilla/show_bug.cgi?id=30380 .
>
> I already had this fixed in a branch, but hadn't had time to submit.
>
> FWIW, it's the top commit of 
> https://github.com/vries/gdb/commits/testsuite/old-gcc .

Sorry for duplicating this work.  I ran into this case while working on
some other patch and I didn't want to have to carry around such a
trivial local patch.

Hope this didn't cause you any serious problems.

Thanks,
Andrew
  

Patch

diff --git a/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp b/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp
index 33ad72e6f05..4c3ab7362e9 100644
--- a/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp
+++ b/gdb/testsuite/gdb.linespec/cp-completion-aliases.exp
@@ -20,7 +20,7 @@  load_lib completion-support.exp
 
 standard_testfile .cc
 
-if {[prepare_for_testing "failed to prepare" $testfile $srcfile {debug}]} {
+if {[prepare_for_testing "failed to prepare" $testfile $srcfile {debug c++}]} {
     return -1
 }