| ... | @@ -813,7 +813,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -813,7 +813,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 813 | \\extern enum enum_ty my_enum; | 813 | \\extern enum enum_ty my_enum; |
| 814 | \\enum enum_ty { FOO }; | 814 | \\enum enum_ty { FOO }; |
| 815 | , &[_][]const u8{ | 815 | , &[_][]const u8{ |
| 816 | \\pub const FOO = 0; | 816 | \\pub const FOO = @enumToInt(enum_enum_ty.FOO); |
| 817 | \\pub const enum_enum_ty = extern enum { | 817 | \\pub const enum_enum_ty = extern enum { |
| 818 | \\ FOO, | 818 | \\ FOO, |
| 819 | \\}; | 819 | \\}; |
| ... | @@ -891,27 +891,27 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -891,27 +891,27 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 891 | \\ p, | 891 | \\ p, |
| 892 | \\}; | 892 | \\}; |
| 893 | , &[_][]const u8{ | 893 | , &[_][]const u8{ |
| 894 | \\pub const a = 0; | 894 | \\pub const a = @enumToInt(enum_unnamed_1.a); |
| 895 | \\pub const b = 1; | 895 | \\pub const b = @enumToInt(enum_unnamed_1.b); |
| 896 | \\pub const c = 2; | 896 | \\pub const c = @enumToInt(enum_unnamed_1.c); |
| 897 | \\const enum_unnamed_1 = extern enum { | 897 | \\const enum_unnamed_1 = extern enum { |
| 898 | \\ a, | 898 | \\ a, |
| 899 | \\ b, | 899 | \\ b, |
| 900 | \\ c, | 900 | \\ c, |
| 901 | \\}; | 901 | \\}; |
| 902 | \\pub const d = enum_unnamed_1; | 902 | \\pub const d = enum_unnamed_1; |
| 903 | \\pub const e = 0; | 903 | \\pub const e = @enumToInt(enum_unnamed_2.e); |
| 904 | \\pub const f = 4; | 904 | \\pub const f = @enumToInt(enum_unnamed_2.f); |
| 905 | \\pub const g = 5; | 905 | \\pub const g = @enumToInt(enum_unnamed_2.g); |
| 906 | \\const enum_unnamed_2 = extern enum { | 906 | \\const enum_unnamed_2 = extern enum { |
| 907 | \\ e = 0, | 907 | \\ e = 0, |
| 908 | \\ f = 4, | 908 | \\ f = 4, |
| 909 | \\ g = 5, | 909 | \\ g = 5, |
| 910 | \\}; | 910 | \\}; |
| 911 | \\pub export var h: enum_unnamed_2 = @intToEnum(enum_unnamed_2, e); | 911 | \\pub export var h: enum_unnamed_2 = @intToEnum(enum_unnamed_2, e); |
| 912 | \\pub const i = 0; | 912 | \\pub const i = @enumToInt(enum_unnamed_3.i); |
| 913 | \\pub const j = 1; | 913 | \\pub const j = @enumToInt(enum_unnamed_3.j); |
| 914 | \\pub const k = 2; | 914 | \\pub const k = @enumToInt(enum_unnamed_3.k); |
| 915 | \\const enum_unnamed_3 = extern enum { | 915 | \\const enum_unnamed_3 = extern enum { |
| 916 | \\ i, | 916 | \\ i, |
| 917 | \\ j, | 917 | \\ j, |
| ... | @@ -921,9 +921,9 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -921,9 +921,9 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 921 | \\ l: enum_unnamed_3, | 921 | \\ l: enum_unnamed_3, |
| 922 | \\ m: d, | 922 | \\ m: d, |
| 923 | \\}; | 923 | \\}; |
| 924 | \\pub const n = 0; | 924 | \\pub const n = @enumToInt(enum_i.n); |
| 925 | \\pub const o = 1; | 925 | \\pub const o = @enumToInt(enum_i.o); |
| 926 | \\pub const p = 2; | 926 | \\pub const p = @enumToInt(enum_i.p); |
| 927 | \\pub const enum_i = extern enum { | 927 | \\pub const enum_i = extern enum { |
| 928 | \\ n, | 928 | \\ n, |
| 929 | \\ o, | 929 | \\ o, |
| ... | @@ -1349,8 +1349,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -1349,8 +1349,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 1349 | \\ Two, | 1349 | \\ Two, |
| 1350 | \\}; | 1350 | \\}; |
| 1351 | , &[_][]const u8{ | 1351 | , &[_][]const u8{ |
| 1352 | \\pub const One = 0; | 1352 | \\pub const One = @enumToInt(enum_unnamed_1.One); |
| 1353 | \\pub const Two = 1; | 1353 | \\pub const Two = @enumToInt(enum_unnamed_1.Two); |
| 1354 | \\const enum_unnamed_1 = extern enum { | 1354 | \\const enum_unnamed_1 = extern enum { |
| 1355 | \\ One, | 1355 | \\ One, |
| 1356 | \\ Two, | 1356 | \\ Two, |
| ... | @@ -2153,28 +2153,6 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -2153,28 +2153,6 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2153 | \\pub const FOO_CHAR = '\x3f'; | 2153 | \\pub const FOO_CHAR = '\x3f'; |
| 2154 | }); | 2154 | }); |
| 2155 | | 2155 | |
| 2156 | cases.add("enums", | | |
| 2157 | \\enum Foo { | | |
| 2158 | \\ FooA, | | |
| 2159 | \\ FooB, | | |
| 2160 | \\ Foo1, | | |
| 2161 | \\}; | | |
| 2162 | , &[_][]const u8{ | | |
| 2163 | \\pub const enum_Foo = extern enum { | | |
| 2164 | \\ A, | | |
| 2165 | \\ B, | | |
| 2166 | \\ @"1", | | |
| 2167 | \\}; | | |
| 2168 | , | | |
| 2169 | \\pub const FooA = 0; | | |
| 2170 | , | | |
| 2171 | \\pub const FooB = 1; | | |
| 2172 | , | | |
| 2173 | \\pub const Foo1 = 2; | | |
| 2174 | , | | |
| 2175 | \\pub const Foo = enum_Foo; | | |
| 2176 | }); | | |
| 2177 | | | |
| 2178 | cases.add("enums", | 2156 | cases.add("enums", |
| 2179 | \\enum Foo { | 2157 | \\enum Foo { |
| 2180 | \\ FooA = 2, | 2158 | \\ FooA = 2, |
| ... | @@ -2182,17 +2160,14 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -2182,17 +2160,14 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2182 | \\ Foo1, | 2160 | \\ Foo1, |
| 2183 | \\}; | 2161 | \\}; |
| 2184 | , &[_][]const u8{ | 2162 | , &[_][]const u8{ |
| | 2163 | \\pub const FooA = @enumToInt(enum_Foo.A); |
| | 2164 | \\pub const FooB = @enumToInt(enum_Foo.B); |
| | 2165 | \\pub const Foo1 = @enumToInt(enum_Foo.@"1"); |
| 2185 | \\pub const enum_Foo = extern enum { | 2166 | \\pub const enum_Foo = extern enum { |
| 2186 | \\ A = 2, | 2167 | \\ A = 2, |
| 2187 | \\ B = 5, | 2168 | \\ B = 5, |
| 2188 | \\ @"1" = 6, | 2169 | \\ @"1" = 6, |
| 2189 | \\}; | 2170 | \\}; |
| 2190 | , | | |
| 2191 | \\pub const FooA = 2; | | |
| 2192 | , | | |
| 2193 | \\pub const FooB = 5; | | |
| 2194 | , | | |
| 2195 | \\pub const Foo1 = 6; | | |
| 2196 | , | 2171 | , |
| 2197 | \\pub const Foo = enum_Foo; | 2172 | \\pub const Foo = enum_Foo; |
| 2198 | }); | 2173 | }); |