www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 22333] New: ImportC: fails to parse enumerators with = and

https://issues.dlang.org/show_bug.cgi?id=22333

          Issue ID: 22333
           Summary: ImportC: fails to parse enumerators with = and gnu
                    attributes
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: dave287091 gmail.com

An example: 

// enum.c
enum E {
  oldval __attribute__((deprecated)) = 0,
  newval
};

int
fn (void)
{
  return oldval;
}

enum.c(3): Error: found `=` when expecting `}`
enum.c(3): Error: identifier or `(` expected
enum.c(5): Error: `=`, `;` or `,` expected

macOS’s version of time.h uses this.

--
Sep 24 2021