Taddeus Kroes
|
d2ac2ab8ea
Removed 'open Globals' and used 'Globals.args' instead
|
12 жил өмнө |
Taddeus Kroes
|
3403c4a3fc
Formatted all source code to 2 spaces as tab, and some more prettifications
|
12 жил өмнө |
Taddeus Kroes
|
7c9b5cf1af
Added interface files for all modules, moved command-line arguments to globals.ml, made types.ml an .mli file
|
12 жил өмнө |
Taddeus Kroes
|
f496ce57f6
Made some better error messages for array assignments
|
12 жил өмнө |
Taddeus Kroes
|
4f4ff50e16
Now using Int32 for integer bounds checking
|
12 жил өмнө |
Taddeus Kroes
|
1ba7a9c726
Integer bound check now uses Nativeint module so that it works on all platforms
|
12 жил өмнө |
Taddeus Kroes
|
7462e88b3d
Added warning and constant propagation check for division by zero
|
12 жил өмнө |
Taddeus Kroes
|
5355a47d07
Added range check vor integer constants
|
12 жил өмнө |
Taddeus Kroes
|
f979c1faf4
Changed the way array types are represented, and cleaned up a lot of code in the process
|
12 жил өмнө |
Taddeus Kroes
|
dd6930eb07
Code cleanup
|
12 жил өмнө |
Taddeus Kroes
|
efa5140ebf
bool_op now traverses properly and typecasts are pruned when not int->float or float->int
|
12 жил өмнө |
Taddeus Kroes
|
fc5a38d30a
Re-wrote main file: added a centralized list of phases and generalized logging format + added -upto option
|
12 жил өмнө |
Taddeus Kroes
|
4225c53427
Finished first version of assembly phase
|
12 жил өмнө |
Taddeus Kroes
|
90c7e2b83d
Worked on assembly generation, added -noopt argument, tweaked verbority level
|
12 жил өмнө |
Taddeus Kroes
|
21fc065c8f
Changed constant node types, added VarDecs|LocalFuns wrappers, implemented first steps of assembler
|
12 жил өмнө |
Taddeus Kroes
|
45ccce6001
Renamed ast.ml to types.ml
|
12 жил өмнө |
Taddeus Kroes
|
838389b893
Changed the way nodes are annotated to something more moldable, in the process changing/bugfixing pretty much everything
|
12 жил өмнө |
Taddeus Kroes
|
153ac60c5d
Fixed buf that caused fundec calls and conditional expressions not to be typechecked correctly
|
12 жил өмнө |
Taddeus Kroes
|
bd304ed3a4
Implemented external variables using getters and setters, some general changes & fixes in other phases for compliance
|
12 жил өмнө |
Taddeus Kroes
|
e326a5b132
Disabled type pruning because of usefulness in other phases
|
12 жил өмнө |
Taddeus Kroes
|
180700fd3e
Moved command-line arguments to global record
|
12 жил өмнө |
Taddeus Kroes
|
33622fca25
Typecheck phase now prunes Type nodes when done
|
12 жил өмнө |
Taddeus Kroes
|
1cdc10625d
Implemented array dimension reduction, generalized Array type, more bugfixes in other phases
|
12 жил өмнө |
Taddeus Kroes
|
796d94bbb7
Error message cleanup
|
12 жил өмнө |
Taddeus Kroes
|
f282d9b512
Implemented scalar array initialisation
|
12 жил өмнө |
Taddeus Kroes
|
74d0ad3cc1
Finished type checking & content analysis
|
12 жил өмнө |
Taddeus Kroes
|
12da98abeb
Implemented array dims expansion correctly (probably), more bugfixes
|
12 жил өмнө |
Taddeus Kroes
|
96ecd75efb
Implemented most of typechecking, some bugfixes in other phases
|
12 жил өмнө |