parent
c3f4f3e487
commit
f191ea7244
6 changed files with 139 additions and 15 deletions
|
|
@ -271,6 +271,27 @@ struct TestMyInt {
|
|||
MyInt f1;
|
||||
};
|
||||
|
||||
// Issue #237
|
||||
typedef union sx_ivec3 {
|
||||
struct {
|
||||
int x;
|
||||
int y;
|
||||
struct z {
|
||||
int z;
|
||||
};
|
||||
};
|
||||
|
||||
int n[3];
|
||||
} sx_ivec3;
|
||||
|
||||
// Issue #236
|
||||
enum {
|
||||
SG_INVALID_ID = 0,
|
||||
SG_NUM_SHADER_STAGES = 2,
|
||||
SG_MAX_MIPMAPS = 16,
|
||||
SG_MAX_TEXTUREARRAY_LAYERS = 128
|
||||
};
|
||||
|
||||
|
||||
|
||||
// DUPLICATES
|
||||
|
|
@ -546,6 +567,26 @@ struct TestMyInt {
|
|||
MyInt f1;
|
||||
};
|
||||
|
||||
// Issue #237
|
||||
typedef union sx_ivec3 {
|
||||
struct {
|
||||
int x;
|
||||
int y;
|
||||
struct z {
|
||||
int z;
|
||||
};
|
||||
};
|
||||
|
||||
int n[3];
|
||||
} sx_ivec3;
|
||||
|
||||
// Issue #236
|
||||
enum {
|
||||
SG_INVALID_ID = 0,
|
||||
SG_NUM_SHADER_STAGES = 2,
|
||||
SG_MAX_MIPMAPS = 16,
|
||||
SG_MAX_TEXTUREARRAY_LAYERS = 128
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -353,6 +353,7 @@ checkPragmas(U2, pHeaderBy & @["union"], istype = false)
|
|||
var u2: U2
|
||||
u2.f1 = addr a15.a2[0]
|
||||
|
||||
assert PANEL_WINDOW is nk_panel_type
|
||||
assert PANEL_WINDOW == 1
|
||||
assert PANEL_GROUP == 2
|
||||
assert PANEL_POPUP == 4
|
||||
|
|
@ -497,4 +498,21 @@ when not defined(NOHEADER):
|
|||
when declared(MyInt):
|
||||
assert false, "MyInt is defined!"
|
||||
testFields(TestMyInt, "f1!cint")
|
||||
checkPragmas(TestMyInt, pHeaderBy, isType = false)
|
||||
checkPragmas(TestMyInt, pHeaderBy, isType = false)
|
||||
|
||||
# #237
|
||||
assert sx_ivec3 is object
|
||||
testFields(sx_ivec3, "x|y|z|n!cint|cint|cint|array[3, cint]")
|
||||
checkPragmas(sx_ivec3, pHeaderBy & @["union"], istype = false)
|
||||
var sx: sx_ivec3
|
||||
sx.x = 5
|
||||
assert sx.n[0] == 5
|
||||
when not defined(NOHEADER):
|
||||
# Nim doesn't know of the anonymous nested struct so when the header
|
||||
# isn't present, the test below breaks
|
||||
sx.n[1] = 4
|
||||
assert sx.y == 4
|
||||
|
||||
# #236
|
||||
assert SG_MAX_MIPMAPS is cint
|
||||
assert SG_MAX_MIPMAPS == 16
|
||||
|
|
@ -70,7 +70,7 @@ var
|
|||
|
||||
e: ENUM
|
||||
e2: ENUM2 = enum5
|
||||
e3: Enum_testh1 = enum7
|
||||
e3 = enum7
|
||||
e4: ENUM4 = enum11
|
||||
|
||||
vptr: VOIDPTR
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue