Author: metze Date: 2007-08-16 13:34:54 +0000 (Thu, 16 Aug 2007) New Revision: 24489
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=24489 Log: only typedef enum { ... } foo; enum's should look for has_properties() of $enum->{PARENT} metze Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Typelist.pm Changeset: Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Typelist.pm =================================================================== --- branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Typelist.pm 2007-08-16 13:29:38 UTC (rev 24488) +++ branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Typelist.pm 2007-08-16 13:34:54 UTC (rev 24489) @@ -174,8 +174,18 @@ { my $enum = shift; $enum->{TYPE} eq "ENUM" or die("not an enum"); - if (has_property($enum->{PARENT}, "enum8bit")) { + + # for typedef enum { } we need to check $enum->{PARENT} + if (has_property($enum, "enum8bit")) { return "uint8"; + } elsif (has_property($enum, "enum16bit")) { + return "uint16"; + } elsif (has_property($enum, "v1_enum")) { + return "uint32"; + } elsif (has_property($enum->{PARENT}, "enum8bit")) { + return "uint8"; + } elsif (has_property($enum->{PARENT}, "enum16bit")) { + return "uint16"; } elsif (has_property($enum->{PARENT}, "v1_enum")) { return "uint32"; }