On 9/10/19 1:25 PM, Marek Polacek wrote:
@@ -21870,10 +21873,16 @@ cp_parser_type_id_1 (cp_parser *parser,
cp_parser_flags flags,
/* There might or might not be an abstract declarator. */
cp_parser_parse_tentatively (parser);
+ /* Reset the flags, but remember if we should perform del
On Mon, Sep 09, 2019 at 04:56:18PM -0400, Jason Merrill wrote:
> On 9/7/19 3:37 PM, Marek Polacek wrote:
> > * parser.c (CP_PARSER_FLAGS_NO_DELAY_NOEXCEPT): New parser flag.
>
> Is it feasible to reverse this, and specifically delay parsing of
> noexcept-specifications on member function decla
On 9/7/19 3:37 PM, Marek Polacek wrote:
* parser.c (CP_PARSER_FLAGS_NO_DELAY_NOEXCEPT): New parser flag.
Is it feasible to reverse this, and specifically delay parsing of
noexcept-specifications on member function declarations? When else
would we want it?
Jason
Here we ICE with
template struct S {
using U = void() noexcept(B);
};
S s;
since the delayed noexcept parsing patch. The problem is that we create
a DEFERRED_PARSE node for the noexcept-specifier, but we never put the
whole declaration into unparsed_noexcepts (cp_parser_save_default_ar