| ... | @@ -1361,27 +1361,55 @@ pub fn addCases(cases: *tests.TranslateCContext) void { | ... | @@ -1361,27 +1361,55 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 1361 | | 1361 | |
| 1362 | cases.add("correctly translate enum init values", | 1362 | cases.add("correctly translate enum init values", |
| 1363 | \\enum EnumWithInits { | 1363 | \\enum EnumWithInits { |
| 1364 | \\ VAL1 = 0, | 1364 | \\ VAL01 = 0, |
| 1365 | \\ VAL2 = 1, | 1365 | \\ VAL02 = 1, |
| 1366 | \\ VAL3 = 2, | 1366 | \\ VAL03 = 2, |
| 1367 | \\ VAL4 = 3, | 1367 | \\ VAL04 = 3, |
| 1368 | \\ VAL5 = -1, | 1368 | \\ VAL05 = -1, |
| 1369 | \\ VAL6 = -2, | 1369 | \\ VAL06 = -2, |
| 1370 | \\ VAL7 = -3, | 1370 | \\ VAL07 = -3, |
| 1371 | \\ VAL8 = -4, | 1371 | \\ VAL08 = -4, |
| 1372 | \\ VAL9 = VAL2 + VAL8, | 1372 | \\ VAL09 = VAL02 + VAL08, |
| | 1373 | \\ VAL10 = -1000012000, |
| | 1374 | \\ VAL11 = -1000161000, |
| | 1375 | \\ VAL12 = -1000174001, |
| | 1376 | \\ VAL13 = VAL09, |
| | 1377 | \\ VAL14 = VAL10, |
| | 1378 | \\ VAL15 = VAL11, |
| | 1379 | \\ VAL16 = VAL13, |
| | 1380 | \\ VAL17 = (VAL16 - VAL10 + 1), |
| | 1381 | \\ VAL18 = 0x1000000000000000L, |
| | 1382 | \\ VAL19 = VAL18 + VAL18 + VAL18 - 1, |
| | 1383 | \\ VAL20 = VAL19 + VAL19, |
| | 1384 | \\ VAL21 = VAL20 + 0xFFFFFFFFFFFFFFFF, |
| | 1385 | \\ VAL22 = 0xFFFFFFFFFFFFFFFF + 1, |
| | 1386 | \\ VAL23 = 0xFFFFFFFFFFFFFFFF, |
| 1373 | \\}; | 1387 | \\}; |
| 1374 | , | 1388 | , |
| 1375 | \\pub const enum_EnumWithInits = extern enum { | 1389 | \\pub const enum_EnumWithInits = extern enum(c_longlong) { |
| 1376 | \\ VAL1 = 0, | 1390 | \\ VAL01 = 0, |
| 1377 | \\ VAL2 = 1, | 1391 | \\ VAL02 = 1, |
| 1378 | \\ VAL3 = 2, | 1392 | \\ VAL03 = 2, |
| 1379 | \\ VAL4 = 3, | 1393 | \\ VAL04 = 3, |
| 1380 | \\ VAL5 = -1, | 1394 | \\ VAL05 = -1, |
| 1381 | \\ VAL6 = -2, | 1395 | \\ VAL06 = -2, |
| 1382 | \\ VAL7 = -3, | 1396 | \\ VAL07 = -3, |
| 1383 | \\ VAL8 = -4, | 1397 | \\ VAL08 = -4, |
| 1384 | \\ VAL9 = -3, | 1398 | \\ VAL09 = -3, |
| | 1399 | \\ VAL10 = -1000012000, |
| | 1400 | \\ VAL11 = -1000161000, |
| | 1401 | \\ VAL12 = -1000174001, |
| | 1402 | \\ VAL13 = -3, |
| | 1403 | \\ VAL14 = -1000012000, |
| | 1404 | \\ VAL15 = -1000161000, |
| | 1405 | \\ VAL16 = -3, |
| | 1406 | \\ VAL17 = 1000011998, |
| | 1407 | \\ VAL18 = 1152921504606846976, |
| | 1408 | \\ VAL19 = 3458764513820540927, |
| | 1409 | \\ VAL20 = 6917529027641081854, |
| | 1410 | \\ VAL21 = 6917529027641081853, |
| | 1411 | \\ VAL22 = 0, |
| | 1412 | \\ VAL23 = -1, |
| 1385 | \\}; | 1413 | \\}; |
| 1386 | ); | 1414 | ); |
| 1387 | } | 1415 | } |