|
|
6f0a3754bd
|
check whether the body of a function guarantees a return value and throw an exception if not
|
2020-02-03 22:36:24 +01:00 |
|
|
|
7c56f401ac
|
add error prefix to the runtime exception message
|
2020-02-03 22:28:37 +01:00 |
|
|
|
02fb7b7cc2
|
unify error message appearance
|
2020-02-03 22:28:21 +01:00 |
|
|
|
3a89ab2231
|
remove error handling, since these kinds of errors are caught by our context analysis
|
2020-02-03 22:24:27 +01:00 |
|
|
|
3e8a904cb8
|
catch error to abort further processing
|
2020-02-03 22:21:30 +01:00 |
|
|
|
cb0d63a71c
|
save the line and column of the corresponding token, generate an error prefix for every thrown error
|
2020-02-03 22:20:59 +01:00 |
|
|
|
12c1f75602
|
add fields to save the line and column in which the token corresponding to the node was found
|
2020-02-03 22:20:25 +01:00 |
|
|
|
33cbae0eeb
|
implement method to generate an error prefix that mentions the line and column the error occured in
|
2020-02-03 22:19:36 +01:00 |
|
Dennis Kaiser
|
5ed294965c
|
Merge branch '22-operatorenprazedenz' into 'master'
Resolve "Operatorenpräzedenz"
Closes #22
See merge request mkais001/klang!8
|
2020-02-03 22:10:42 +01:00 |
|
Dennis Kaiser
|
ea2115e4c3
|
Merge branch '18-add-possibility-to-pass-input-file-and-output-filename' into 'master'
Added possibility to pass filenames for input / output
Closes #18
See merge request mkais001/klang!9
|
2020-02-03 22:08:24 +01:00 |
|
Marvin Kaiser
|
69f44a2867
|
Added possibility to pass filenames for input / output
|
2020-02-03 17:16:27 +01:00 |
|
Marvin Kaiser
|
34253a70ba
|
Implement operator precedence with and without parenthesis
|
2020-02-03 16:35:29 +01:00 |
|
Marvin Kaiser
|
a2c9625691
|
Merge branch '1-grammatik-typinformationen-hinzufugen' into 'master'
Resolve "Grammatik: Typinformationen hinzufügen"
Closes #1
See merge request mkais001/klang!7
|
2020-01-27 17:05:26 +01:00 |
|
|
|
3fb30ebd7e
|
print statement never has a type
|
2020-01-27 17:02:21 +01:00 |
|
|
|
fa8904e0f5
|
fix type annotation for comparison expressions
|
2020-01-27 16:57:09 +01:00 |
|
Marvin Kaiser
|
86468ea740
|
Fix correct type name access
|
2020-01-27 16:47:16 +01:00 |
|
Marvin Kaiser
|
b1be18f367
|
Fix function type addition for if statement
|
2020-01-27 16:47:00 +01:00 |
|
Marvin Kaiser
|
db7331911a
|
Added functionality to analyze AST for all defined functions
|
2020-01-27 16:04:38 +01:00 |
|
|
|
0aed4ee893
|
my initial short for typechecking, still very unifinished tho
|
2020-01-21 00:21:54 +01:00 |
|
Dennis Kaiser
|
e940100ec1
|
Merge branch 'feature/add-bool-literal' into 'master'
Feature/add bool literal
See merge request mkais001/klang!6
|
2020-01-20 19:40:08 +01:00 |
|
|
|
e5baad62e6
|
implement tests
|
2020-01-20 19:33:07 +01:00 |
|
|
|
295bcaec8a
|
implement visitors for boolean expressions
|
2020-01-20 19:32:50 +01:00 |
|
|
|
722a9babcb
|
remove unused import
|
2020-01-20 19:32:16 +01:00 |
|
Marvin Kaiser
|
d27df13ec1
|
added boolean operators
|
2020-01-20 16:01:25 +01:00 |
|
|
|
1186bb4550
|
add bool literal
|
2020-01-20 15:26:55 +01:00 |
|
Marvin Kaiser
|
1095d9dd83
|
Correct spelling errors in README.md
|
2020-01-20 12:39:56 +01:00 |
|
Marvin Kaiser
|
11c8759dfd
|
Added project summary to readme
|
2020-01-14 19:15:58 +01:00 |
|
Marvin Kaiser
|
15128a8d75
|
updae makefile to use --no-main
|
2020-01-14 18:43:03 +01:00 |
|
Marvin Kaiser
|
34d0e1bb0e
|
Added cli argument to either generate main method or not
|
2020-01-14 18:37:34 +01:00 |
|
Marvin Kaiser
|
5275b63940
|
added make target to only cleanup the tests. Can be used for quicker test development without having to recompile the klang compiler
|
2020-01-14 12:25:04 +01:00 |
|
Marvin Kaiser
|
7af6565e07
|
Added more tests for while
|
2020-01-14 12:24:25 +01:00 |
|
Marvin Kaiser
|
3ca9fe4de1
|
Added automatic counting of successes/failures in tests
|
2020-01-14 12:15:20 +01:00 |
|
Marvin Kaiser
|
1ceba78059
|
Updated cicd yaml to work with latest test suite
|
2020-01-14 11:50:56 +01:00 |
|
Marvin Kaiser
|
d2d50f6d4f
|
cleaned up test suit
|
2020-01-14 11:47:04 +01:00 |
|
Marvin Kaiser
|
be43cc9a77
|
implement for loops
|
2020-01-14 11:04:31 +01:00 |
|
Marvin Kaiser
|
1980e1ba8c
|
Move the SCOL for var_assigns and var_decl to the statement rule
|
2020-01-14 10:39:46 +01:00 |
|
Marvin Kaiser
|
f6818b6983
|
fix syntax issues
|
2020-01-14 10:23:12 +01:00 |
|
Marvin Kaiser
|
586c2bb5d9
|
renamed whileLoop to WhileLoop
|
2020-01-14 08:50:45 +01:00 |
|
Marvin Kaiser
|
5eb0679bf3
|
Renamed doWhileLoop to DoWhileLoop
|
2020-01-14 08:48:51 +01:00 |
|
Marvin Kaiser
|
e52ad061f9
|
Implemented do while loops
|
2020-01-13 16:43:38 +01:00 |
|
Marvin Kaiser
|
02e57b7db5
|
Added tests for self-altering expressions
|
2020-01-13 16:17:20 +01:00 |
|
Marvin Kaiser
|
bd4ae1d605
|
Added while loop
|
2020-01-13 16:08:44 +01:00 |
|
Marvin Kaiser
|
33215a1b4a
|
Merge branch '10-vergleichsoperatoren' into 'master'
Resolve "Vergleichsoperatoren"
Closes #10
See merge request mkais001/klang!5
|
2019-12-20 10:02:10 +01:00 |
|
Marvin Kaiser
|
079cdf4969
|
Implemented != expression
|
2019-12-20 09:09:01 +01:00 |
|
Marvin Kaiser
|
a79b7c9362
|
Implemented boolean expressions
|
2019-12-20 09:01:03 +01:00 |
|
Marvin Kaiser
|
f341401ccc
|
Implemented pretty printing and evaluating of boolean expressions
|
2019-12-20 08:42:20 +01:00 |
|
Marvin Kaiser
|
00145848da
|
Added classes for boolean expressions
|
2019-12-20 08:41:05 +01:00 |
|
Marvin Kaiser
|
c5419b85c7
|
Extend grammar: added boolean expressions
|
2019-12-20 08:40:17 +01:00 |
|
|
|
d1f8a18bef
|
add missing visit of lhs in a modulo expresion
|
2019-12-19 14:47:26 +01:00 |
|
|
|
c3ad231650
|
ignore test binary
|
2019-12-19 14:46:53 +01:00 |
|