diff options
author | Araq <rumpf_a@web.de> | 2012-03-28 23:03:55 +0200 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2012-03-28 23:03:55 +0200 |
commit | 97743faa837b4e7ec4db0af59d7aafd5d09deee7 (patch) | |
tree | 1b684436e38ca47a5c5687a19f6e8a6dc0d507da /compiler | |
parent | ff3e80279b928f94fe707b23a749d12e0080bd21 (diff) | |
download | Nim-97743faa837b4e7ec4db0af59d7aafd5d09deee7.tar.gz |
tests tcnstseq and tcnstseq3 work again
Diffstat (limited to 'compiler')
-rwxr-xr-x | compiler/ccgstmts.nim | 5 | ||||
-rw-r--r-- | compiler/cgendata.nim | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/compiler/ccgstmts.nim b/compiler/ccgstmts.nim index f725a31f1..9c0d52221 100755 --- a/compiler/ccgstmts.nim +++ b/compiler/ccgstmts.nim @@ -725,7 +725,10 @@ proc genStmts(p: BProc, t: PNode) = genLineDir(p, t) initLocExpr(p, t, a) of nkAsgn: genAsgn(p, t, fastAsgn=false) - of nkFastAsgn: genAsgn(p, t, fastAsgn=true) + of nkFastAsgn: + # transf is overly aggressive with 'nkFastAsgn', so we work around here. + # See tests/run/tcnstseq3 for an example that would fail otherwise. + genAsgn(p, t, fastAsgn=p.prc != nil) of nkDiscardStmt: genLineDir(p, t) initLocExpr(p, t.sons[0], a) diff --git a/compiler/cgendata.nim b/compiler/cgendata.nim index d93c107ac..c58c64250 100644 --- a/compiler/cgendata.nim +++ b/compiler/cgendata.nim @@ -36,7 +36,7 @@ type cfsDynLibInit, # section for init of dynamic library binding cfsDynLibDeinit # section for deinitialization of dynamic # libraries - TCTypeKind* = enum # describes the type kind of a C type + TCTypeKind* = enum # describes the type kind of a C type ctVoid, ctChar, ctBool, ctUInt, ctUInt8, ctUInt16, ctUInt32, ctUInt64, ctInt, ctInt8, ctInt16, ctInt32, ctInt64, ctFloat, ctFloat32, ctFloat64, ctFloat128, ctArray, ctStruct, ctPtr, ctNimStr, ctNimSeq, ctProc, ctCString |