Given
typedef enum MyFoo MyFoo;
glib-mkenums would get confused, not notice the ";", and then keep
skipping lines until it found one that started with a "{", possibly
even going into the next file.
Fix it to just ignore those lines instead (and also, to error out if
it hits eof while parsing an enum).
https://bugzilla.gnome.org/show_bug.cgi?id=669595
([^*]+|\*(?!/))*
\*/@@gx;
+ # ignore forward declarations
+ next if /^\s*typedef\s+enum.*;/;
+
if (m@^\s*typedef\s+enum\s*
({)?\s*
(?:/\*<
# Didn't have trailing '{' look on next lines
if (!defined $1 && !defined $4) {
while (<>) {
+ if (eof) {
+ die "Hit end of file while parsing enum in $ARGV";
+ }
if (s/^\s*\{//) {
last;
}