mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-23 07:45:23 +00:00
* fixes #9794 * Fix linux test
This commit is contained in:
@@ -310,9 +310,9 @@ proc computeSizeAlign(conf: ConfigRef; typ: PType) =
|
||||
for i in countup(0, sonsLen(typ) - 1):
|
||||
let child = typ.sons[i]
|
||||
computeSizeAlign(conf, child)
|
||||
if child.size == szIllegalRecursion:
|
||||
typ.size = szIllegalRecursion
|
||||
typ.align = szIllegalRecursion
|
||||
if child.size < 0:
|
||||
typ.size = child.size
|
||||
typ.align = child.align
|
||||
return
|
||||
maxAlign = max(maxAlign, child.align)
|
||||
sizeAccum = align(sizeAccum, child.align) + child.size
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
discard """
|
||||
output: "abc"
|
||||
output: '''abc
|
||||
16 == 16'''
|
||||
"""
|
||||
|
||||
type
|
||||
@@ -14,3 +15,19 @@ doAssert TA.sizeof == string.sizeof
|
||||
|
||||
echo a.x
|
||||
|
||||
##########################################
|
||||
# bug #9794
|
||||
##########################################
|
||||
type
|
||||
imported_double {.importc: "double".} = object
|
||||
|
||||
Pod = object
|
||||
v* : imported_double
|
||||
seed*: int32
|
||||
|
||||
Pod2 = tuple[v: imported_double, seed: int32]
|
||||
|
||||
proc test() =
|
||||
echo sizeof(Pod), " == ",sizeof(Pod2)
|
||||
|
||||
test()
|
||||
Reference in New Issue
Block a user