Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-28 Thread Jason Merrill
On 1/28/19 12:29 PM, Marek Polacek wrote: On Mon, Jan 28, 2019 at 11:55:21AM -0500, Jason Merrill wrote: The new test fails on arm-eabi (with newlib, but passes on on arm*linux*): FAIL: g++.dg/cpp0x/enum37.C -std=c++14 (test for excess errors) FAIL: g++.dg/cpp0x/enum37.C -std=c++17 (test for

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-28 Thread Marek Polacek
On Mon, Jan 28, 2019 at 11:55:21AM -0500, Jason Merrill wrote: > > > The new test fails on arm-eabi (with newlib, but passes on on arm*linux*): > > > FAIL: g++.dg/cpp0x/enum37.C -std=c++14 (test for excess errors) > > > FAIL: g++.dg/cpp0x/enum37.C -std=c++17 (test for excess errors) > > > > > >

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-28 Thread Jason Merrill
On Mon, Jan 28, 2019 at 10:40 AM Marek Polacek wrote: > On Mon, Jan 28, 2019 at 10:37:01AM +0100, Christophe Lyon wrote: > > On Sun, 27 Jan 2019 at 01:25, Jason Merrill wrote: > > > > > > On Fri, Jan 25, 2019 at 6:22 PM Marek Polacek wrote: > > > > > > > > On Fri, Jan 25, 2019 at 12:14:07PM

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-28 Thread Marek Polacek
On Mon, Jan 28, 2019 at 10:37:01AM +0100, Christophe Lyon wrote: > On Sun, 27 Jan 2019 at 01:25, Jason Merrill wrote: > > > > On Fri, Jan 25, 2019 at 6:22 PM Marek Polacek wrote: > > > > > > On Fri, Jan 25, 2019 at 12:14:07PM -0500, Jason Merrill wrote: > > > > On 1/25/19 12:09 PM, Marek Polacek

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-28 Thread Christophe Lyon
On Sun, 27 Jan 2019 at 01:25, Jason Merrill wrote: > > On Fri, Jan 25, 2019 at 6:22 PM Marek Polacek wrote: > > > > On Fri, Jan 25, 2019 at 12:14:07PM -0500, Jason Merrill wrote: > > > On 1/25/19 12:09 PM, Marek Polacek wrote: > > > > On Fri, Jan 25, 2019 at 10:55:55AM -0600, Tim Song wrote: > >

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-26 Thread Jason Merrill
On Fri, Jan 25, 2019 at 6:22 PM Marek Polacek wrote: > > On Fri, Jan 25, 2019 at 12:14:07PM -0500, Jason Merrill wrote: > > On 1/25/19 12:09 PM, Marek Polacek wrote: > > > On Fri, Jan 25, 2019 at 10:55:55AM -0600, Tim Song wrote: > > > > On Thu, Jan 24, 2019 at 4:14 PM Jason Merrill wrote: > > >

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-25 Thread Marek Polacek
On Fri, Jan 25, 2019 at 12:14:07PM -0500, Jason Merrill wrote: > On 1/25/19 12:09 PM, Marek Polacek wrote: > > On Fri, Jan 25, 2019 at 10:55:55AM -0600, Tim Song wrote: > > > On Thu, Jan 24, 2019 at 4:14 PM Jason Merrill wrote: > > > > > > > > On 1/24/19 2:16 PM, Marek Polacek wrote: > > > > >

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-25 Thread Jason Merrill
On 1/25/19 12:09 PM, Marek Polacek wrote: On Fri, Jan 25, 2019 at 10:55:55AM -0600, Tim Song wrote: On Thu, Jan 24, 2019 at 4:14 PM Jason Merrill wrote: On 1/24/19 2:16 PM, Marek Polacek wrote: This test ICEs since r159006 which added type = ENUM_UNDERLYING_TYPE (type); to

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-25 Thread Marek Polacek
On Fri, Jan 25, 2019 at 10:55:55AM -0600, Tim Song wrote: > On Thu, Jan 24, 2019 at 4:14 PM Jason Merrill wrote: > > > > On 1/24/19 2:16 PM, Marek Polacek wrote: > > > This test ICEs since r159006 which added > > > > > > type = ENUM_UNDERLYING_TYPE (type); > > > > > > to type_promotes_to. In

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-25 Thread Tim Song
On Thu, Jan 24, 2019 at 4:14 PM Jason Merrill wrote: > > On 1/24/19 2:16 PM, Marek Polacek wrote: > > This test ICEs since r159006 which added > > > > type = ENUM_UNDERLYING_TYPE (type); > > > > to type_promotes_to. In this test ENUM_UNDERLYING_TYPE is null because we > > haven't yet parsed

Re: C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-24 Thread Jason Merrill
On 1/24/19 2:16 PM, Marek Polacek wrote: This test ICEs since r159006 which added type = ENUM_UNDERLYING_TYPE (type); to type_promotes_to. In this test ENUM_UNDERLYING_TYPE is null because we haven't yet parsed '}' of the enum and the underlying type isn't fixed, and so checking

C++ PATCH for c++/89024 - ICE with incomplete enum type

2019-01-24 Thread Marek Polacek
This test ICEs since r159006 which added type = ENUM_UNDERLYING_TYPE (type); to type_promotes_to. In this test ENUM_UNDERLYING_TYPE is null because we haven't yet parsed '}' of the enum and the underlying type isn't fixed, and so checking TYPE_UNSIGNED crashed. I've added some checks to