diff options
author | Thomas Voss <mail@thomasvoss.com> | 2024-07-08 23:43:04 +0200 |
---|---|---|
committer | Thomas Voss <mail@thomasvoss.com> | 2024-07-08 23:43:04 +0200 |
commit | 1a769e8ef02893f737a88fe683add8ffea7affb1 (patch) | |
tree | 88258d275729e4a3115951f1c169902ca7270e3d | |
parent | 7b1cb6c2383254c55c30bf2aa7626ff20a1fc1b9 (diff) |
Document another bug
-rw-r--r-- | BUGS | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -20,3 +20,13 @@ 2. Recursive functions crash the compiler. foo :: () { return foo(); } /* breaks */ + +3. Global variables are broken both when being declared and assigned to + function calls and other globals. Both of these cased should be + illegal; globals if assigned at declaration should only be able to be + assigned to constant expressions. + + foo :: () int { return 42; } + x := 5; + x′ := x; /* breaks */ + x″ := foo(); /* breaks */ |