* Re: [COMIITTED] Testsuite: Make dependence on -fdelete-null-pointer-checks explicit
[not found] <21d3892a-d5c8-3f35-7843-03f006676a88@codesourcery.com>
@ 2022-01-10 11:45 ` Jonathan Wakely
2022-01-13 20:33 ` Jonathan Wakely
0 siblings, 1 reply; 2+ messages in thread
From: Jonathan Wakely @ 2022-01-10 11:45 UTC (permalink / raw)
To: Sandra Loosemore; +Cc: gcc-patches, libstdc++, Jakub Jelinek
CC libstdc++ and Jakub.
On 08/01/22 23:22 -0700, Sandra Loosemore wrote:
>I've checked in these tweaks for various testcases that fail on
>nios2-elf without an explicit -fdelete-null-pointer-checks option. This
>target is configured to build with that optimization off by default.
>
>-Sandra
>
>commit 04c69d0e61c0f98a010d77a79ab749d5f0aa6b67
>Author: Sandra Loosemore <sandra@codesourcery.com>
>Date: Sat Jan 8 22:02:13 2022 -0800
>
> Testsuite: Make dependence on -fdelete-null-pointer-checks explicit
>
> nios2-elf target defaults to -fno-delete-null-pointer-checks, breaking
> tests that implicitly depend on that optimization. Add the option
> explicitly on these tests.
>
> 2022-01-08 Sandra Loosemore <sandra@codesourcery.com>
>
> gcc/testsuite/
> * g++.dg/cpp0x/constexpr-compare1.C: Add explicit
> -fdelete-null-pointer-checks option.
> * g++.dg/cpp0x/constexpr-compare2.C: Likewise.
> * g++.dg/cpp0x/constexpr-typeid2.C: Likewise.
> * g++.dg/cpp1y/constexpr-94716.C: Likewise.
> * g++.dg/cpp1z/constexpr-compare1.C: Likewise.
> * g++.dg/cpp1z/constexpr-if36.C: Likewise.
> * gcc.dg/init-compare-1.c: Likewise.
>
> libstdc++-v3/
> * testsuite/18_support/type_info/constexpr.cc: Add explicit
> -fdelete-null-pointer-checks option.
This test should not be doing anything with null pointers. Instead of
working around the error on nios2-elf, I think the front-end needs
fixing.
Maybe something is not being folded early enough for the constexpr
evaluation to work. Jakub?
$ g++ -std=gnu++23 ~/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc -c -fno-delete-null-pointer-checks
/home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc:49:22: error: non-constant condition for static assertion
49 | static_assert( test01() );
| ~~~~~~^~
In file included from /home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc:5:
/home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc:49:22: in 'constexpr' expansion of 'test01()'
/home/jwakely/gcc/12/include/c++/12.0.0/typeinfo:196:19: error: '(((const std::type_info*)(& _ZTIi)) == ((const std::type_info*)(& _ZTIl)))' is not a constant expression
196 | return this == &__arg;
| ~~~~~^~~~~~~~~
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [COMIITTED] Testsuite: Make dependence on -fdelete-null-pointer-checks explicit
2022-01-10 11:45 ` [COMIITTED] Testsuite: Make dependence on -fdelete-null-pointer-checks explicit Jonathan Wakely
@ 2022-01-13 20:33 ` Jonathan Wakely
0 siblings, 0 replies; 2+ messages in thread
From: Jonathan Wakely @ 2022-01-13 20:33 UTC (permalink / raw)
To: Sandra Loosemore; +Cc: gcc-patches, libstdc++, Jakub Jelinek
On 10/01/22 11:45 +0000, Jonathan Wakely wrote:
>CC libstdc++ and Jakub.
>
>On 08/01/22 23:22 -0700, Sandra Loosemore wrote:
>>I've checked in these tweaks for various testcases that fail on
>>nios2-elf without an explicit -fdelete-null-pointer-checks option. This
>>target is configured to build with that optimization off by default.
>>
>>-Sandra
>>
>>commit 04c69d0e61c0f98a010d77a79ab749d5f0aa6b67
>>Author: Sandra Loosemore <sandra@codesourcery.com>
>>Date: Sat Jan 8 22:02:13 2022 -0800
>>
>> Testsuite: Make dependence on -fdelete-null-pointer-checks explicit
>>
>> nios2-elf target defaults to -fno-delete-null-pointer-checks, breaking
>> tests that implicitly depend on that optimization. Add the option
>> explicitly on these tests.
>>
>> 2022-01-08 Sandra Loosemore <sandra@codesourcery.com>
>>
>> gcc/testsuite/
>> * g++.dg/cpp0x/constexpr-compare1.C: Add explicit
>> -fdelete-null-pointer-checks option.
>> * g++.dg/cpp0x/constexpr-compare2.C: Likewise.
>> * g++.dg/cpp0x/constexpr-typeid2.C: Likewise.
>> * g++.dg/cpp1y/constexpr-94716.C: Likewise.
>> * g++.dg/cpp1z/constexpr-compare1.C: Likewise.
>> * g++.dg/cpp1z/constexpr-if36.C: Likewise.
>> * gcc.dg/init-compare-1.c: Likewise.
>>
>> libstdc++-v3/
>> * testsuite/18_support/type_info/constexpr.cc: Add explicit
>> -fdelete-null-pointer-checks option.
>
>This test should not be doing anything with null pointers. Instead of
>working around the error on nios2-elf, I think the front-end needs
>fixing.
>
>Maybe something is not being folded early enough for the constexpr
>evaluation to work. Jakub?
>
>$ g++ -std=gnu++23 ~/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc -c -fno-delete-null-pointer-checks
>/home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc:49:22: error: non-constant condition for static assertion
> 49 | static_assert( test01() );
> | ~~~~~~^~
>In file included from /home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc:5:
>/home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/18_support/type_info/constexpr.cc:49:22: in 'constexpr' expansion of 'test01()'
>/home/jwakely/gcc/12/include/c++/12.0.0/typeinfo:196:19: error: '(((const std::type_info*)(& _ZTIi)) == ((const std::type_info*)(& _ZTIl)))' is not a constant expression
> 196 | return this == &__arg;
> | ~~~~~^~~~~~~~~
This is now https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104016
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-01-13 20:34 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <21d3892a-d5c8-3f35-7843-03f006676a88@codesourcery.com>
2022-01-10 11:45 ` [COMIITTED] Testsuite: Make dependence on -fdelete-null-pointer-checks explicit Jonathan Wakely
2022-01-13 20:33 ` Jonathan Wakely
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).