public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
@ 2024-02-05 10:13 iains at gcc dot gnu.org
  2024-02-05 11:38 ` [Bug target/113763] " iains at gcc dot gnu.org
                   ` (19 more replies)
  0 siblings, 20 replies; 21+ messages in thread
From: iains at gcc dot gnu.org @ 2024-02-05 10:13 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

            Bug ID: 113763
           Summary: [14 Regression] build fails with clang++ host compiler
                    because aarch64.cc uses C++14 constexpr.
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Keywords: build
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: iains at gcc dot gnu.org
                CC: rsandifo at gcc dot gnu.org
  Target Milestone: ---
            Target: aarch64

On aarch64, can no longer bootstrap GCC using clang because:

/src-local/gcc-master-patched/gcc/config/aarch64/aarch64.cc:13654:50: error:
constexpr variable 'tiles' must be initialized by a constant expression
  static constexpr std::pair<unsigned int, char> tiles[] = {
                                                 ^         ~
/src-local/gcc-master-patched/gcc/config/aarch64/aarch64.cc:13655:5: note:
non-constexpr constructor 'pair<int, char, nullptr>' cannot be used in a
constant expression
    { 0xff, 'b' },
    ^
/Library/Developer/CommandLineTools/SDKs/MacOSX13.3.sdk/usr/include/c++/v1/__utility/pair.h:194:5:
note: declared here
    pair(_U1&& __u1, _U2&& __u2)
    ^

It seems that GCC accepts this back to at least gcc-4.7 for std=c++11 but, at
least cppreference says that form is only constexpr from c++14 and clang++ does
not accept it.

https://en.cppreference.com/w/cpp/utility/pair/pair

trivial reproducer:

  static constexpr std::pair<unsigned int, char> tiles[] = {
    { 0xff, 'b' },
    { 0x55, 'h' },
    { 0x11, 's' },
    { 0x01, 'd' }
  };

int main(){}

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
@ 2024-02-05 11:38 ` iains at gcc dot gnu.org
  2024-02-05 11:54 ` jakub at gcc dot gnu.org
                   ` (18 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: iains at gcc dot gnu.org @ 2024-02-05 11:38 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #1 from Iain Sandoe <iains at gcc dot gnu.org> ---
I suppose the trivial fix is s/constexpr/const/ (but maybe there's something
more elegant).

If we agree that this is c++14 - only, then maybe we should have a separate bug
that we accept this for c++11.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
  2024-02-05 11:38 ` [Bug target/113763] " iains at gcc dot gnu.org
@ 2024-02-05 11:54 ` jakub at gcc dot gnu.org
  2024-02-05 12:21 ` redi at gcc dot gnu.org
                   ` (17 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-05 11:54 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org,
                   |                            |redi at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I think that ctor is constexpr since https://wg21.link/N3471
Does that have some feature test macro?
If not, should we use constexpr conditionally for C++14 and const otherwise?

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
  2024-02-05 11:38 ` [Bug target/113763] " iains at gcc dot gnu.org
  2024-02-05 11:54 ` jakub at gcc dot gnu.org
@ 2024-02-05 12:21 ` redi at gcc dot gnu.org
  2024-02-05 12:21 ` redi at gcc dot gnu.org
                   ` (16 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: redi at gcc dot gnu.org @ 2024-02-05 12:21 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #2)
> I think that ctor is constexpr since https://wg21.link/N3471
> Does that have some feature test macro?

That was long before we started using feature test macros.

> If not, should we use constexpr conditionally for C++14 and const otherwise?

Yes.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2024-02-05 12:21 ` redi at gcc dot gnu.org
@ 2024-02-05 12:21 ` redi at gcc dot gnu.org
  2024-02-05 14:57 ` rguenth at gcc dot gnu.org
                   ` (15 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: redi at gcc dot gnu.org @ 2024-02-05 12:21 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Or just const ... why bother using constexpr at all?

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2024-02-05 12:21 ` redi at gcc dot gnu.org
@ 2024-02-05 14:57 ` rguenth at gcc dot gnu.org
  2024-02-05 15:07 ` jakub at gcc dot gnu.org
                   ` (14 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rguenth at gcc dot gnu.org @ 2024-02-05 14:57 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |14.0

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2024-02-05 14:57 ` rguenth at gcc dot gnu.org
@ 2024-02-05 15:07 ` jakub at gcc dot gnu.org
  2024-02-05 15:08 ` jakub at gcc dot gnu.org
                   ` (13 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-05 15:07 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I guess it surely helps if the array isn't dynamically initialized, but that is
just an optimization, it will work even when it is.  And the compiler should do
that even if the array isn't constexpr if the ctor is constexpr.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2024-02-05 15:07 ` jakub at gcc dot gnu.org
@ 2024-02-05 15:08 ` jakub at gcc dot gnu.org
  2024-02-05 15:49 ` redi at gcc dot gnu.org
                   ` (12 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-05 15:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Jon, what about Iain's question whether it isn't a bug we use constexpr on the
ctor even in C++11 mode?
Do we treat such papers as DRs on the library side?

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2024-02-05 15:08 ` jakub at gcc dot gnu.org
@ 2024-02-05 15:49 ` redi at gcc dot gnu.org
  2024-02-05 15:53 ` iains at gcc dot gnu.org
                   ` (11 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: redi at gcc dot gnu.org @ 2024-02-05 15:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #6)
> Jon, what about Iain's question whether it isn't a bug we use constexpr on
> the ctor even in C++11 mode?
> Do we treat such papers as DRs on the library side?

No, but it looks like we did at some point in the past (see also the constexpr
<cmath> stuff, PR 102916 et al).

I'm not very motivated to replace those constexpr with _GLIBCXX14_CONSTEXPR on
pair, tuple and initializer_list, but for correctness we should do it.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2024-02-05 15:49 ` redi at gcc dot gnu.org
@ 2024-02-05 15:53 ` iains at gcc dot gnu.org
  2024-02-05 15:54 ` redi at gcc dot gnu.org
                   ` (10 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: iains at gcc dot gnu.org @ 2024-02-05 15:53 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #8 from Iain Sandoe <iains at gcc dot gnu.org> ---
(In reply to Jonathan Wakely from comment #7)
> (In reply to Jakub Jelinek from comment #6)
> > Jon, what about Iain's question whether it isn't a bug we use constexpr on
> > the ctor even in C++11 mode?
> > Do we treat such papers as DRs on the library side?
> 
> No, but it looks like we did at some point in the past (see also the
> constexpr <cmath> stuff, PR 102916 et al).
> 
> I'm not very motivated to replace those constexpr with _GLIBCXX14_CONSTEXPR
> on pair, tuple and initializer_list, but for correctness we should do it.

presumably, that still allows the constexpr with gnu++11?
(so we'd not be losing that much, but we'd catch cases like this one earlier)

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2024-02-05 15:53 ` iains at gcc dot gnu.org
@ 2024-02-05 15:54 ` redi at gcc dot gnu.org
  2024-02-05 21:35 ` jakub at gcc dot gnu.org
                   ` (9 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: redi at gcc dot gnu.org @ 2024-02-05 15:54 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #9 from Jonathan Wakely <redi at gcc dot gnu.org> ---
No, _GLIBCXX14_CONSTEXPR only cares about 11 vs 14, not strict vs gnu.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2024-02-05 15:54 ` redi at gcc dot gnu.org
@ 2024-02-05 21:35 ` jakub at gcc dot gnu.org
  2024-02-06 10:03 ` rsandifo at gcc dot gnu.org
                   ` (8 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-05 21:35 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 57334
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57334&action=edit
gcc14-pr113763.patch

Can't we just get rid of std::pair here?  I mean, 0xff certainly fits into host
unsigned char, to make EBCDIC work on -fsigned-char hosts I've used char
instead of unsigned char.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2024-02-05 21:35 ` jakub at gcc dot gnu.org
@ 2024-02-06 10:03 ` rsandifo at gcc dot gnu.org
  2024-02-06 10:05 ` jakub at gcc dot gnu.org
                   ` (7 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2024-02-06 10:03 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #11 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
Currently away so can't try it myself, but how about just using an ad-hoc
structure instead?

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (11 preceding siblings ...)
  2024-02-06 10:03 ` rsandifo at gcc dot gnu.org
@ 2024-02-06 10:05 ` jakub at gcc dot gnu.org
  2024-02-06 10:34 ` jakub at gcc dot gnu.org
                   ` (6 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-06 10:05 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Richard Sandiford from comment #11)
> Currently away so can't try it myself, but how about just using an ad-hoc
> structure instead?

Yeah, I can do that too.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (12 preceding siblings ...)
  2024-02-06 10:05 ` jakub at gcc dot gnu.org
@ 2024-02-06 10:34 ` jakub at gcc dot gnu.org
  2024-02-06 10:38 ` rsandifo at gcc dot gnu.org
                   ` (5 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-06 10:34 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #57334|0                           |1
        is obsolete|                            |

--- Comment #13 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 57338
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57338&action=edit
gcc14-pr113763.patch

This adds a local class for this instead.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (13 preceding siblings ...)
  2024-02-06 10:34 ` jakub at gcc dot gnu.org
@ 2024-02-06 10:38 ` rsandifo at gcc dot gnu.org
  2024-02-06 10:42 ` redi at gcc dot gnu.org
                   ` (4 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2024-02-06 10:38 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #14 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
AFAIK, the constructor shouldn't be necessary.  (And without it, the whole
thing would fit on one line.)  LGTM (and preapproved) otherwise.  Thanks for
doing this.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (14 preceding siblings ...)
  2024-02-06 10:38 ` rsandifo at gcc dot gnu.org
@ 2024-02-06 10:42 ` redi at gcc dot gnu.org
  2024-02-06 10:49 ` jakub at gcc dot gnu.org
                   ` (3 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: redi at gcc dot gnu.org @ 2024-02-06 10:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #15 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Yup, no constructor needed, just make it an aggregate.

I've created PR 113782 for the non-conforming constexpr in libstdc++.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (15 preceding siblings ...)
  2024-02-06 10:42 ` redi at gcc dot gnu.org
@ 2024-02-06 10:49 ` jakub at gcc dot gnu.org
  2024-02-06 14:59 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-06 10:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #57338|0                           |1
        is obsolete|                            |
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2024-02-06
           Assignee|unassigned at gcc dot gnu.org      |jakub at gcc dot gnu.org

--- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 57339
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57339&action=edit
gcc14-pr113763.patch

Updated patch I'll test then.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (16 preceding siblings ...)
  2024-02-06 10:49 ` jakub at gcc dot gnu.org
@ 2024-02-06 14:59 ` cvs-commit at gcc dot gnu.org
  2024-02-06 15:21 ` jakub at gcc dot gnu.org
  2024-02-24 20:23 ` pinskia at gcc dot gnu.org
  19 siblings, 0 replies; 21+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2024-02-06 14:59 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

--- Comment #17 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:df9f6b934886f51c0c07220d1ee38874b69646c7

commit r14-8828-gdf9f6b934886f51c0c07220d1ee38874b69646c7
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Tue Feb 6 15:56:50 2024 +0100

    aarch64: Fix build against libc++ in c++11 mode [PR113763]

    std::pair ctor used in tiles constexpr variable is only constexpr in C++14
    and later, it works with libstdc++ because it is marked constexpr there
even
    in C++11 mode.

    The following patch fixes it by using an unnamed local class instead of
    std::pair, and additionally changes the first element from unsigned int to
    unsigned char because 0xff has to fit into unsigned char on all hosts.

    2024-02-06  Jakub Jelinek  <jakub@redhat.com>

            PR target/113763
            * config/aarch64/aarch64.cc (aarch64_output_sme_zero_za): Change
tiles
            element from std::pair<unsigned int, char> to an unnamed struct.
            Adjust uses of tile range variable.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (17 preceding siblings ...)
  2024-02-06 14:59 ` cvs-commit at gcc dot gnu.org
@ 2024-02-06 15:21 ` jakub at gcc dot gnu.org
  2024-02-24 20:23 ` pinskia at gcc dot gnu.org
  19 siblings, 0 replies; 21+ messages in thread
From: jakub at gcc dot gnu.org @ 2024-02-06 15:21 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #18 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Hopefully fixed (don't have libc++ to try though).

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Bug target/113763] [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr.
  2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
                   ` (18 preceding siblings ...)
  2024-02-06 15:21 ` jakub at gcc dot gnu.org
@ 2024-02-24 20:23 ` pinskia at gcc dot gnu.org
  19 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu.org @ 2024-02-24 20:23 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113763

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |markmigm at gmail dot com

--- Comment #19 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
*** Bug 114091 has been marked as a duplicate of this bug. ***

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2024-02-24 20:24 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-05 10:13 [Bug target/113763] New: [14 Regression] build fails with clang++ host compiler because aarch64.cc uses C++14 constexpr iains at gcc dot gnu.org
2024-02-05 11:38 ` [Bug target/113763] " iains at gcc dot gnu.org
2024-02-05 11:54 ` jakub at gcc dot gnu.org
2024-02-05 12:21 ` redi at gcc dot gnu.org
2024-02-05 12:21 ` redi at gcc dot gnu.org
2024-02-05 14:57 ` rguenth at gcc dot gnu.org
2024-02-05 15:07 ` jakub at gcc dot gnu.org
2024-02-05 15:08 ` jakub at gcc dot gnu.org
2024-02-05 15:49 ` redi at gcc dot gnu.org
2024-02-05 15:53 ` iains at gcc dot gnu.org
2024-02-05 15:54 ` redi at gcc dot gnu.org
2024-02-05 21:35 ` jakub at gcc dot gnu.org
2024-02-06 10:03 ` rsandifo at gcc dot gnu.org
2024-02-06 10:05 ` jakub at gcc dot gnu.org
2024-02-06 10:34 ` jakub at gcc dot gnu.org
2024-02-06 10:38 ` rsandifo at gcc dot gnu.org
2024-02-06 10:42 ` redi at gcc dot gnu.org
2024-02-06 10:49 ` jakub at gcc dot gnu.org
2024-02-06 14:59 ` cvs-commit at gcc dot gnu.org
2024-02-06 15:21 ` jakub at gcc dot gnu.org
2024-02-24 20:23 ` pinskia 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).