summary refs log tree commit diff stats
path: root/tests/vm/teval1.nim
blob: 1d3a68a0d72b1ed5cb392ceec231a3cc01cd1778 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import macros

proc testProc: string {.compileTime.} =
  result = ""
  result = result & ""

when true:
  macro test(n: stmt): stmt {.immediate.} =
    result = newNimNode(nnkStmtList)
    echo "#", testProc(), "#"
  test:
    "hi"

const
  x = testProc()

echo "##", x, "##"

# bug #1310
static:
    var i, j: set[int8] = {}
    var k = i + j
following "reagent deref(reagent x)") result.properties.push_back(pair<string, vector<string> >("raw", vector<string>())); :(code) int space(const reagent& x) { return Current_routine.calls.top().default_space; } int address(int offset, int base) { if (base == 0) return offset; // raw if (offset >= Memory[base]) { // todo: test raise << "location " << offset << " is out of bounds " << Memory[base] << '\n'; } return base+1 + offset; } :(after "void write_memory(reagent x, vector<int> data)") if (x.name == "default-space") { assert(data.size() == 1); Current_routine.calls.top().default_space = data[0]; //? cout << "AAA " << Current_routine.calls.top().default_space << '\n'; //? 1 return; }