public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Biener <richard.guenther@gmail.com>
To: Jakub Jelinek <jakub@redhat.com>
Cc: Iain Sandoe <idsandoe@googlemail.com>, GCC Development <gcc@gcc.gnu.org>
Subject: Re: GCC 12.1 Release Candidate available from gcc.gnu.org
Date: Sun, 1 May 2022 17:38:23 +0200	[thread overview]
Message-ID: <92C6EA36-CA62-4E3E-B7B5-5E1C06A44E70@gmail.com> (raw)
In-Reply-To: <Ym5xzRFKr35FIFjl@tucnak>



> Am 01.05.2022 um 13:42 schrieb Jakub Jelinek via Gcc <gcc@gcc.gnu.org>:
> 
> On Sun, May 01, 2022 at 11:02:29AM +0100, Iain Sandoe wrote:
>> All of these show new fails (presumably because checking is off):
>> 
>> XPASS: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++98 (internal compiler error)
>> FAIL: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++98 (test for excess errors)
>> XPASS: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++14 (internal compiler error)
>> FAIL: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++14 (test for excess errors)
>> XPASS: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++17 (internal compiler error)
>> FAIL: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++17 (test for excess errors)
>> XPASS: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++20 (internal compiler error)
>> FAIL: c-c++-common/goacc/kernels-decompose-pr100400-1-2.c  -std=c++20 (test for excess errors)
> 
> We can live with that for 12.1.
> 
>> earlier x86 darwin is particularly noisy test-wise because there seem to be a lot of newer AVX512 tests
>> that do not check for support from the assembler etc.
> 
> That would be nice to fix for 12.2, can you file a PR with a list?
> 
>> However from Darwin12+ (macOS 10.8) we expect to be able to bootstrap with the host clang, but:
>> 
>> Not OK:
>> x86_64-darwin{12..15} FAIL to bootstrap with host clang, this is a regression.
>> 
>> the reason is that "gcc/analyzer/region-model.cc” uses initializer_lists, and it seems that <initializer_list>
>> is not transitively included by any used headers for _LIBCPP_VERSION < 4000.  I fixed that locally by
>> adding initializer_list into system.h (and adding INCLUDE_INITIALIZER_LIST to the top of 
>> gcc/analyzer/region-model.cc)
>> - with that change those versions do bootstrap and test OK***
> 
> From what I can see, with libstdc++ it works because <utility> which is
> included by system.h includes <initializer_list>.
> If I rename initializer_list in analyzer/region-model.ii to initializer_listx, I
> also get:
> ../../gcc/analyzer/region-model.cc: In function ‘void ana::selftest::test_binop_svalue_folding()’:
> ../../gcc/analyzer/region-model.cc:4966:48: error: deducing from brace-enclosed initializer list requires ‘#include <initializer_list>’
> 4508 | 
>  +++ |+#include <initializer_list>
> 4509 | static void
> ......
> 4966 |     for (auto op : {BIT_IOR_EXPR, TRUTH_OR_EXPR})
>      |                                                ^
> ../../gcc/analyzer/region-model.cc:4978:49: error: deducing from brace-enclosed initializer list requires ‘#include <initializer_list>’
> 4978 |     for (auto op : {BIT_AND_EXPR, TRUTH_AND_EXPR})
>      |                                                 ^
> 
> I think we have 2 options, one is do what you wrote above,
> INCLUDE_INITIALIZER_LIST defined before system.h to get #include <initializer_list>.
> The other option is just to include that unconditionally, it is a very small
> header.  For libstdc++ it will make no difference as it is included anyway
> and the header is really small there, libc++ includes <cstddef> which isn't
> normally included and system.h includes <stddef.h> instead.

I’d say unconditionally would be OK. I suppose the chance that any host C++ is good enough to build GCC as-is but fails to provide <initializer_list> is zero?

I’d be OK to do this change without a new RC even.

Richard.

> 
>    Jakub
> 

  reply	other threads:[~2022-05-01 15:38 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-29 14:34 Jakub Jelinek
2022-05-01 10:02 ` Iain Sandoe
2022-05-01 11:41   ` Jakub Jelinek
2022-05-01 15:38     ` Richard Biener [this message]
2022-05-01 18:06       ` Jonathan Wakely
2022-05-02 11:49 ` Boris Kolpackov
2022-05-02 12:26   ` Marc Glisse
2022-05-02 15:42     ` Jonathan Wakely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=92C6EA36-CA62-4E3E-B7B5-5E1C06A44E70@gmail.com \
    --to=richard.guenther@gmail.com \
    --cc=gcc@gcc.gnu.org \
    --cc=idsandoe@googlemail.com \
    --cc=jakub@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).