Stefano Sanfilippo
|
3facc1c9d4
|
Getting rid of last C leftovers.
|
2014-11-28 00:01:24 +01:00 |
|
Stefano Sanfilippo
|
84199887a7
|
Close all memory leaks.
|
2014-11-27 23:52:21 +01:00 |
|
Stefano Sanfilippo
|
fda1ae54bc
|
Shorter prefix for parser pseudonamespace.
|
2014-11-27 21:55:40 +01:00 |
|
Stefano Sanfilippo
|
88e78be419
|
Fixing swapped GTE and LTE.
|
2014-11-27 21:30:42 +01:00 |
|
Stefano Sanfilippo
|
747bc16a85
|
Plugging AST nodes into semantic rules.
|
2014-11-27 20:01:52 +01:00 |
|
Stefano Sanfilippo
|
40845c011b
|
Cleanups.
1. move emit() to separate file.
2. move main to .cpp
3. use "namespace" for parser and lexer.
4. remove Type.h
|
2014-11-27 19:59:48 +01:00 |
|
Stefano Sanfilippo
|
9e12a95612
|
Renaming ASSERT_BEGIN and ASSERT_END into ASSERT and BANG.
|
2014-11-25 00:47:51 +01:00 |
|
Stefano Sanfilippo
|
4cdde5025a
|
Fully optional comma.
As a side effect, return now must end with "!".
|
2014-11-25 00:46:34 +01:00 |
|
Stefano Sanfilippo
|
ab0cd1f1de
|
Funnier function declaration.
|
2014-11-25 00:39:42 +01:00 |
|
Stefano Sanfilippo
|
90c75e9b5a
|
Optional statement terminator wherever possibile.
|
2014-11-25 00:39:27 +01:00 |
|
Stefano Sanfilippo
|
7197bd707a
|
Allow arbitrary expressions to be passed as function params.
|
2014-11-25 00:39:01 +01:00 |
|
Stefano Sanfilippo
|
be3de046c3
|
Moving %start directive to bottom of prologue.
|
2014-11-24 23:59:28 +01:00 |
|
Stefano Sanfilippo
|
b5d524c295
|
Add Types.h to %code require in parser definition.
|
2014-11-24 23:56:54 +01:00 |
|
Stefano Sanfilippo
|
af934dfea8
|
Formatting
|
2014-11-24 21:19:13 +01:00 |
|
Stefano Sanfilippo
|
2f42a60849
|
Prototypes and header cleanups for parser.
|
2014-11-24 21:18:59 +01:00 |
|
Stefano Sanfilippo
|
65a3929f48
|
CASE_END only if case is not last.
|
2014-11-24 10:50:10 +01:00 |
|
Stefano Sanfilippo
|
16772f287e
|
Cluster common part between expression and semi-expression.
|
2014-11-24 00:14:27 +01:00 |
|
Stefano Sanfilippo
|
d80705b163
|
Allow ARTICLE in function param list.
|
2014-11-23 23:45:29 +01:00 |
|
Stefano Sanfilippo
|
f9abe82f69
|
Allow function calls in expressions.
|
2014-11-23 23:45:16 +01:00 |
|
Stefano Sanfilippo
|
68cb175e90
|
Cases in branch can only be semi expressions.
|
2014-11-23 23:36:58 +01:00 |
|
Stefano Sanfilippo
|
00ed9869ed
|
Verbose error messages.
|
2014-11-23 22:46:50 +01:00 |
|
Stefano Sanfilippo
|
72e3888cce
|
Functions don't need terminator.
|
2014-11-23 22:43:51 +01:00 |
|
Stefano Sanfilippo
|
a8521e324d
|
Program can be empty.
|
2014-11-23 22:43:42 +01:00 |
|
Stefano Sanfilippo
|
cad818d33b
|
Get rid of DOTS.
|
2014-11-23 22:33:50 +01:00 |
|
Stefano Sanfilippo
|
ae7920d5dd
|
Use comma and dots instead of dot (easy flow).
|
2014-11-23 22:32:41 +01:00 |
|
Stefano Sanfilippo
|
0de580d0e9
|
Funnier delimiters for functions.
|
2014-11-23 22:18:56 +01:00 |
|
Stefano Sanfilippo
|
fd373c390a
|
Fix var initialization.
|
2014-11-23 22:07:55 +01:00 |
|
Stefano Sanfilippo
|
42c46c0648
|
No DOT after END_ASSERT.
|
2014-11-23 22:07:43 +01:00 |
|
Stefano Sanfilippo
|
af77bb1c3c
|
Add missing semicolon.
|
2014-11-23 20:48:23 +01:00 |
|
Stefano Sanfilippo
|
92a6ea5a59
|
Fix assign statement.
|
2014-11-23 20:47:52 +01:00 |
|
Stefano Sanfilippo
|
2aef8dbeec
|
Allow semi expressions in branch conditions.
|
2014-11-23 20:47:39 +01:00 |
|
Stefano Sanfilippo
|
613599a7d9
|
Fix var declaration.
|
2014-11-23 20:47:18 +01:00 |
|
Stefano Sanfilippo
|
49893a04a0
|
Pointer dereference through operator STAR.
|
2014-11-23 20:46:58 +01:00 |
|
Stefano Sanfilippo
|
95087c6e7e
|
No more newlines (use . DOT as delimiter).
|
2014-11-23 20:45:44 +01:00 |
|
Stefano Sanfilippo
|
701e06b781
|
Newline after function definition.
|
2014-11-23 19:30:30 +01:00 |
|
Stefano Sanfilippo
|
03d40b0ad6
|
Statements can be empty.
|
2014-11-23 19:29:48 +01:00 |
|
Stefano Sanfilippo
|
d9f3d6f06a
|
Fix conflicts by introducing a CASE_END token.
|
2014-11-23 19:24:10 +01:00 |
|
Stefano Sanfilippo
|
2da9bdbb79
|
Args are already nullable in function call.
|
2014-11-23 19:21:12 +01:00 |
|
Stefano Sanfilippo
|
386bf40374
|
Any expression can be case condition.
|
2014-11-23 19:20:53 +01:00 |
|
Stefano Sanfilippo
|
c7fec8c9e0
|
Clean up semantic rules.
|
2014-11-23 19:20:10 +01:00 |
|
Stefano Sanfilippo
|
573a94def6
|
Factor NEWLINE at statement level.
|
2014-11-23 19:12:48 +01:00 |
|
Stefano Sanfilippo
|
65b38e33c2
|
Initial commit. Grammar has some conflicts, no rules.
|
2014-11-23 19:04:25 +01:00 |
|