diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2016-09-20 17:13:25 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-20 17:13:25 +0200 |
commit | f3da2fe33031743e8448d51e10ec3ff9a1f43a70 (patch) | |
tree | ba7c775e890f9d6b491203434578eee1a9e080d5 /tests | |
parent | 315fba18cea0c435f4bbff2f58f2b37813563f8e (diff) | |
parent | 82b022ebc6621f573c516ea59e9db4426d87a64e (diff) | |
download | Nim-f3da2fe33031743e8448d51e10ec3ff9a1f43a70.tar.gz |
Merge pull request #4806 from yglukhov/addr-var-init
JS: Fixed ICE on ptr assignment
Diffstat (limited to 'tests')
-rw-r--r-- | tests/js/taddr.nim | 7 | ||||
-rw-r--r-- | tests/js/tbyvar.nim | 8 |
2 files changed, 15 insertions, 0 deletions
diff --git a/tests/js/taddr.nim b/tests/js/taddr.nim index 1fba30d55..d8ff4c11b 100644 --- a/tests/js/taddr.nim +++ b/tests/js/taddr.nim @@ -70,3 +70,10 @@ proc testPtr(p: pointer, a: int) = var i = 123 testPtr(addr i, 5) doAssert(i == 124) + +var someGlobal = 5 +proc getSomeGlobalPtr(): ptr int = addr someGlobal +let someGlobalPtr = getSomeGlobalPtr() +doAssert(someGlobalPtr[] == 5) +someGlobalPtr[] = 10 +doAssert(someGlobal == 10) diff --git a/tests/js/tbyvar.nim b/tests/js/tbyvar.nim index 9714cd56b..40aebd13b 100644 --- a/tests/js/tbyvar.nim +++ b/tests/js/tbyvar.nim @@ -41,3 +41,11 @@ proc bar(s: var seq[int], a: int) = foo(s) s.bar(5) doAssert(s == @[123, 1]) + +import tables +block: # Test get addr of byvar return value + var t = initTable[string, int]() + t["hi"] = 5 + let a = addr t["hi"] + a[] = 10 + doAssert(t["hi"] == 10) |