summary refs log tree commit diff stats
path: root/compiler
diff options
context:
space:
mode:
authorandri lim <jangko128@gmail.com>2017-08-03 16:03:47 +0700
committerAndreas Rumpf <rumpf_a@web.de>2017-08-03 11:03:47 +0200
commit57edf619fe4d3e826c9b8f151b0f639487ede81b (patch)
tree0cb7155fbba77008aec3e5c089f727dd7a4e1352 /compiler
parentf063943d5f9015b0222b5d3c3ff9322c47b5ec6f (diff)
downloadNim-57edf619fe4d3e826c9b8f151b0f639487ede81b.tar.gz
fixes #6016 union alias trigger bad codegen (#6117)
* fixes #6016 union alias trigger bad codegen
* cpp test ok
* merging some test into one file
Diffstat (limited to 'compiler')
-rw-r--r--compiler/ccgtypes.nim1
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/ccgtypes.nim b/compiler/ccgtypes.nim
index 322021287..e63e97e0f 100644
--- a/compiler/ccgtypes.nim
+++ b/compiler/ccgtypes.nim
@@ -336,6 +336,7 @@ proc getTypePre(m: BModule, typ: PType; sig: SigHash): Rope =
     if result == nil: result = cacheGetType(m.typeCache, sig)
 
 proc structOrUnion(t: PType): Rope =
+  let t = t.skipTypes({tyAlias})
   (if tfUnion in t.flags: rope("union") else: rope("struct"))
 
 proc getForwardStructFormat(m: BModule): string =