1macro tickle
2; There once was a bug where overwriting worked only on the second try, so
3; try everything twice for good measure
4
5; Skip this syntax for EQUS, as it is invalid
6IF \2
7\1 = 0
8\1 = 0
9PRINTLN \1
10
11\1 EQU 0
12\1 EQU 0
13PRINTLN \1
14ENDC
15
16PURGE \1
17PURGE \1
18PRINTLN \1
19
20DEF \1 EQU 0
21DEF \1 EQU 0
22PRINTLN \1
23
24DEF \1 = 0
25DEF \1 = 0
26PRINTLN \1
27
28DEF \1 EQUS "hello"
29DEF \1 EQUS "hello"
30PRINTLN \1
31
32REDEF \1 = 0
33REDEF \1 = 0
34PRINTLN \1
35
36REDEF \1 EQUS "hello"
37REDEF \1 EQUS "hello"
38PRINTLN \1
39endm
40
41    ; Representative numeric and string builtins
42    tickle __LINE__, 1
43    tickle __FILE__, 0
44