diff options
author | Reimer Behrends <behrends@gmail.com> | 2013-11-29 02:21:47 +0100 |
---|---|---|
committer | Reimer Behrends <behrends@gmail.com> | 2013-12-01 19:15:43 +0100 |
commit | 68b7779bc7582ceb0bce0fd8fa79a91c17498b2d (patch) | |
tree | ddce0b88c8e8105783bff68086ecbdeec4969726 /compiler/parser.nim | |
parent | b893bd074f9e90f517c3f84037f92f89ab6fbad3 (diff) | |
download | Nim-68b7779bc7582ceb0bce0fd8fa79a91c17498b2d.tar.gz |
Fixes various issues with shallow copying.
* The {.shallow.} pragma is now properly respected for objects and tuples that are not handled by genGenericAsgn(). Mirroring the decision in generic assignments, whether an assignment is shallow depends on the destination of the assignment, but not the source. * String literals and complex inline constants are now properly assigned a location kind of locData. * Assignments from a locData source will now force deep copying to occur, even if shallowCopy or {.shallow.} is being used. This avoids potential crashes from `shallowCopy s, "xxx"` or from `shallowCopy t, ("a", "b")`.
Diffstat (limited to 'compiler/parser.nim')
0 files changed, 0 insertions, 0 deletions