public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug other/107665] New: [13 regression] g++.dg/cpp23/ext-floating1.C fails after r13-3387-g79d38dd46e6b07
@ 2022-11-13 5:00 seurer at gcc dot gnu.org
2022-11-13 7:47 ` [Bug other/107665] " pinskia at gcc dot gnu.org
2022-11-15 14:27 ` [Bug target/107665] " jakub at gcc dot gnu.org
0 siblings, 2 replies; 3+ messages in thread
From: seurer at gcc dot gnu.org @ 2022-11-13 5:00 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107665
Bug ID: 107665
Summary: [13 regression] g++.dg/cpp23/ext-floating1.C fails
after r13-3387-g79d38dd46e6b07
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: other
Assignee: unassigned at gcc dot gnu.org
Reporter: seurer at gcc dot gnu.org
Target Milestone: ---
Tried g:79d38dd46e6b07e5a90ab25df1438eb0918eb475, r13-3387-g79d38dd46e6b07
make -k check-gcc RUNTESTFLAGS="dg.exp=g++.dg/cpp23/ext-floating1.C"
FAIL: g++.dg/cpp23/ext-floating1.C -std=gnu++23 (test for excess errors)
# of unexpected failures 1
This is failing on powerpc64 when the compiler is built with
--with-long-double-format=ieee.
Excess errors:
/home/seurer/gcc/git/gcc-test/gcc/testsuite/g++.dg/cpp23/ext-floating1.C:27:54:
error: static assertion failed
/home/seurer/gcc/git/gcc-test/gcc/testsuite/g++.dg/cpp23/ext-floating1.C:28:54:
error: static assertion failed
/home/seurer/gcc/git/gcc-test/gcc/testsuite/g++.dg/cpp23/ext-floating1.C:29:61:
error: static assertion failed
/home/seurer/gcc/git/gcc-test/gcc/testsuite/g++.dg/cpp23/ext-floating1.C:30:61:
error: static assertion failed
The failures are here:
#ifdef __SIZEOF_FLOAT128__
static_assert (is_same<decltype (0.0q), __float128>::value);
static_assert (is_same<decltype (0.0Q), __float128>::value);
static_assert (is_same<decltype (0.0q + 0.0q), __float128>::value);
static_assert (is_same<decltype (0.0Q + 0.0Q), __float128>::value);
#endif
commit 79d38dd46e6b07e5a90ab25df1438eb0918eb475 (HEAD)
Author: Jakub Jelinek <jakub@redhat.com>
Date: Wed Oct 19 18:55:46 2022 +0200
testsuite: Default make check-g++ vs. tests for newest C++ standard
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug other/107665] g++.dg/cpp23/ext-floating1.C fails after r13-3387-g79d38dd46e6b07
2022-11-13 5:00 [Bug other/107665] New: [13 regression] g++.dg/cpp23/ext-floating1.C fails after r13-3387-g79d38dd46e6b07 seurer at gcc dot gnu.org
@ 2022-11-13 7:47 ` pinskia at gcc dot gnu.org
2022-11-15 14:27 ` [Bug target/107665] " jakub at gcc dot gnu.org
1 sibling, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-11-13 7:47 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107665
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
r13-3387-g79d38dd46e6b07 just made the testcase actually run which it was not
doing previously.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug target/107665] g++.dg/cpp23/ext-floating1.C fails after r13-3387-g79d38dd46e6b07
2022-11-13 5:00 [Bug other/107665] New: [13 regression] g++.dg/cpp23/ext-floating1.C fails after r13-3387-g79d38dd46e6b07 seurer at gcc dot gnu.org
2022-11-13 7:47 ` [Bug other/107665] " pinskia at gcc dot gnu.org
@ 2022-11-15 14:27 ` jakub at gcc dot gnu.org
1 sibling, 0 replies; 3+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-11-15 14:27 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107665
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Strange.
When I try with a cross to powerpc64le-linux simplified:
namespace std
{
template<typename T, T v> struct integral_constant {
static constexpr T value = v;
};
typedef integral_constant<bool, false> false_type;
typedef integral_constant<bool, true> true_type;
template<class T, class U>
struct is_same : std::false_type {};
template <class T>
struct is_same<T, T> : std::true_type {};
}
static_assert (std::is_same<decltype (0.0q), __float128>::value);
out of this, I get with any of
-std=gnu++23 -mlong-double-{64,128 -mabi={ieee,ibm}longdouble}
a successful compilation.
So, what type do you get instead?
static machine_mode
rs6000_c_mode_for_suffix (char suffix)
{
if (TARGET_FLOAT128_TYPE)
{
if (suffix == 'q' || suffix == 'Q')
return (FLOAT128_IEEE_P (TFmode)) ? TFmode : KFmode;
/* At the moment, we are not defining a suffix for IBM extended double.
If/when the default for -mabi=ieeelongdouble is changed, and we want
to support __ibm128 constants in legacy library code, we may need to
re-evalaute this decision. Currently, c-lex.cc only supports 'w' and
'q' as machine dependent suffixes. The x86_64 port uses 'w' for
__float80 constants. */
}
return VOIDmode;
}
should return TFmode or KFmode and the c-family code should prefer
float128t_type_node over float128_type_node for the q/w suffixes.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-11-15 14:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-13 5:00 [Bug other/107665] New: [13 regression] g++.dg/cpp23/ext-floating1.C fails after r13-3387-g79d38dd46e6b07 seurer at gcc dot gnu.org
2022-11-13 7:47 ` [Bug other/107665] " pinskia at gcc dot gnu.org
2022-11-15 14:27 ` [Bug target/107665] " jakub at gcc dot gnu.org
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).