| ... | @@ -912,7 +912,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -912,7 +912,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 912 | \\extern enum enum_ty my_enum; | 912 | \\extern enum enum_ty my_enum; |
| 913 | \\enum enum_ty { FOO }; | 913 | \\enum enum_ty { FOO }; |
| 914 | , &[_][]const u8{ | 914 | , &[_][]const u8{ |
| 915 | \\pub const FOO = 0; | 915 | \\pub const FOO = @enumToInt(enum_enum_ty.FOO); |
| 916 | \\pub const enum_enum_ty = extern enum { | 916 | \\pub const enum_enum_ty = extern enum { |
| 917 | \\ FOO, | 917 | \\ FOO, |
| 918 | \\}; | 918 | \\}; |
| ... | @@ -990,27 +990,27 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -990,27 +990,27 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 990 | \\ p, | 990 | \\ p, |
| 991 | \\}; | 991 | \\}; |
| 992 | , &[_][]const u8{ | 992 | , &[_][]const u8{ |
| 993 | \\pub const a = 0; | 993 | \\pub const a = @enumToInt(enum_unnamed_1.a); |
| 994 | \\pub const b = 1; | 994 | \\pub const b = @enumToInt(enum_unnamed_1.b); |
| 995 | \\pub const c = 2; | 995 | \\pub const c = @enumToInt(enum_unnamed_1.c); |
| 996 | \\const enum_unnamed_1 = extern enum { | 996 | \\const enum_unnamed_1 = extern enum { |
| 997 | \\ a, | 997 | \\ a, |
| 998 | \\ b, | 998 | \\ b, |
| 999 | \\ c, | 999 | \\ c, |
| 1000 | \\}; | 1000 | \\}; |
| 1001 | \\pub const d = enum_unnamed_1; | 1001 | \\pub const d = enum_unnamed_1; |
| 1002 | \\pub const e = 0; | 1002 | \\pub const e = @enumToInt(enum_unnamed_2.e); |
| 1003 | \\pub const f = 4; | 1003 | \\pub const f = @enumToInt(enum_unnamed_2.f); |
| 1004 | \\pub const g = 5; | 1004 | \\pub const g = @enumToInt(enum_unnamed_2.g); |
| 1005 | \\const enum_unnamed_2 = extern enum { | 1005 | \\const enum_unnamed_2 = extern enum { |
| 1006 | \\ e = 0, | 1006 | \\ e = 0, |
| 1007 | \\ f = 4, | 1007 | \\ f = 4, |
| 1008 | \\ g = 5, | 1008 | \\ g = 5, |
| 1009 | \\}; | 1009 | \\}; |
| 1010 | \\pub export var h: enum_unnamed_2 = @intToEnum(enum_unnamed_2, e); | 1010 | \\pub export var h: enum_unnamed_2 = @intToEnum(enum_unnamed_2, e); |
| 1011 | \\pub const i = 0; | 1011 | \\pub const i = @enumToInt(enum_unnamed_3.i); |
| 1012 | \\pub const j = 1; | 1012 | \\pub const j = @enumToInt(enum_unnamed_3.j); |
| 1013 | \\pub const k = 2; | 1013 | \\pub const k = @enumToInt(enum_unnamed_3.k); |
| 1014 | \\const enum_unnamed_3 = extern enum { | 1014 | \\const enum_unnamed_3 = extern enum { |
| 1015 | \\ i, | 1015 | \\ i, |
| 1016 | \\ j, | 1016 | \\ j, |
| ... | @@ -1020,9 +1020,9 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -1020,9 +1020,9 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 1020 | \\ l: enum_unnamed_3, | 1020 | \\ l: enum_unnamed_3, |
| 1021 | \\ m: d, | 1021 | \\ m: d, |
| 1022 | \\}; | 1022 | \\}; |
| 1023 | \\pub const n = 0; | 1023 | \\pub const n = @enumToInt(enum_i.n); |
| 1024 | \\pub const o = 1; | 1024 | \\pub const o = @enumToInt(enum_i.o); |
| 1025 | \\pub const p = 2; | 1025 | \\pub const p = @enumToInt(enum_i.p); |
| 1026 | \\pub const enum_i = extern enum { | 1026 | \\pub const enum_i = extern enum { |
| 1027 | \\ n, | 1027 | \\ n, |
| 1028 | \\ o, | 1028 | \\ o, |
| ... | @@ -1448,8 +1448,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -1448,8 +1448,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 1448 | \\ Two, | 1448 | \\ Two, |
| 1449 | \\}; | 1449 | \\}; |
| 1450 | , &[_][]const u8{ | 1450 | , &[_][]const u8{ |
| 1451 | \\pub const One = 0; | 1451 | \\pub const One = @enumToInt(enum_unnamed_1.One); |
| 1452 | \\pub const Two = 1; | 1452 | \\pub const Two = @enumToInt(enum_unnamed_1.Two); |
| 1453 | \\const enum_unnamed_1 = extern enum { | 1453 | \\const enum_unnamed_1 = extern enum { |
| 1454 | \\ One, | 1454 | \\ One, |
| 1455 | \\ Two, | 1455 | \\ Two, |
| ... | @@ -2252,28 +2252,6 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -2252,28 +2252,6 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2252 | \\pub const FOO_CHAR = '\x3f'; | 2252 | \\pub const FOO_CHAR = '\x3f'; |
| 2253 | }); | 2253 | }); |
| 2254 | | 2254 | |
| 2255 | cases.add("enums", | | |
| 2256 | \\enum Foo { | | |
| 2257 | \\ FooA, | | |
| 2258 | \\ FooB, | | |
| 2259 | \\ Foo1, | | |
| 2260 | \\}; | | |
| 2261 | , &[_][]const u8{ | | |
| 2262 | \\pub const enum_Foo = extern enum { | | |
| 2263 | \\ A, | | |
| 2264 | \\ B, | | |
| 2265 | \\ @"1", | | |
| 2266 | \\}; | | |
| 2267 | , | | |
| 2268 | \\pub const FooA = 0; | | |
| 2269 | , | | |
| 2270 | \\pub const FooB = 1; | | |
| 2271 | , | | |
| 2272 | \\pub const Foo1 = 2; | | |
| 2273 | , | | |
| 2274 | \\pub const Foo = enum_Foo; | | |
| 2275 | }); | | |
| 2276 | | | |
| 2277 | cases.add("enums", | 2255 | cases.add("enums", |
| 2278 | \\enum Foo { | 2256 | \\enum Foo { |
| 2279 | \\ FooA = 2, | 2257 | \\ FooA = 2, |
| ... | @@ -2281,17 +2259,14 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -2281,17 +2259,14 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2281 | \\ Foo1, | 2259 | \\ Foo1, |
| 2282 | \\}; | 2260 | \\}; |
| 2283 | , &[_][]const u8{ | 2261 | , &[_][]const u8{ |
| | 2262 | \\pub const FooA = @enumToInt(enum_Foo.A); |
| | 2263 | \\pub const FooB = @enumToInt(enum_Foo.B); |
| | 2264 | \\pub const Foo1 = @enumToInt(enum_Foo.@"1"); |
| 2284 | \\pub const enum_Foo = extern enum { | 2265 | \\pub const enum_Foo = extern enum { |
| 2285 | \\ A = 2, | 2266 | \\ A = 2, |
| 2286 | \\ B = 5, | 2267 | \\ B = 5, |
| 2287 | \\ @"1" = 6, | 2268 | \\ @"1" = 6, |
| 2288 | \\}; | 2269 | \\}; |
| 2289 | , | | |
| 2290 | \\pub const FooA = 2; | | |
| 2291 | , | | |
| 2292 | \\pub const FooB = 5; | | |
| 2293 | , | | |
| 2294 | \\pub const Foo1 = 6; | | |
| 2295 | , | 2270 | , |
| 2296 | \\pub const Foo = enum_Foo; | 2271 | \\pub const Foo = enum_Foo; |
| 2297 | }); | 2272 | }); |