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

--- Comment #31 from joseph at codesourcery dot com <joseph at codesourcery dot 
com> ---
On Fri, 28 Oct 2022, rguenth at gcc dot gnu.org via Gcc-bugs wrote:

> I wouldn't go with a new tree code, given semantics are INTEGER_TYPE it should
> be an INTEGER_TYPE.

Implementation note in that case: bit-precise integer types aren't allowed 
as underlying types for enums, so the code in 
c-parser.cc:c_parser_enum_specifier checking underlying types:

      else if (TREE_CODE (specs->type) != INTEGER_TYPE
               && TREE_CODE (specs->type) != BOOLEAN_TYPE)
        {
          error_at (enum_loc, "invalid %<enum%> underlying type");

would then need to check that the type isn't a bit-precise type.

Reply via email to