Stefano Sanfilippo
f933cc3163
Extracting a FunctionPrototype node.
...
This will allow more flexibility in defining externed functions.
2015-03-08 11:25:41 +01:00
Stefano Sanfilippo
5d043566dc
Turn main into an ordinary function.
2015-03-06 13:40:40 +01:00
Stefano Sanfilippo
b0a01d2fb7
Decouple AST nodes from representation.
...
1. adding getters to all node properties.
2. extracting an Emitter interface.
3. moving all C++ codegen features to a CppEmitter.
All list template specializations typedefs have been removed for
increased readability.
A dependency on Boost is introduced for boost::optional,
which is required in the AST getters API.
2015-03-05 01:16:40 +01:00
Stefano Sanfilippo
9c0a2573c3
Adding simple module dependency analysis.
...
Addresses #14
2014-12-10 20:38:32 +01:00
Stefano Sanfilippo
d0e1af34b2
Merge branch 'master' into cmake
...
Conflicts:
CMakeLists.txt
2014-12-04 22:18:01 +01:00
Stefano Sanfilippo
07bdbbe55e
Switch to CMake.
2014-12-02 17:55:48 +01:00
Stefano Sanfilippo
2f66c31729
Getting rid of explicit stacks with more left-recursive rules.
...
As a result, the grammar should be more readable.
2014-12-02 16:22:03 +01:00
Stefano Sanfilippo
e984b5d0ea
Uniform token naming convention.
2014-12-02 14:15:25 +01:00
Stefano Sanfilippo
76a4e3d7f2
Adding support for functions.
2014-11-30 13:03:45 +01:00
Stefano Sanfilippo
8c813602d4
Stop compilation when an unexpected character is encountered.
2014-11-29 22:31:25 +01:00
Stefano Sanfilippo
335802c667
Fix license header.
2014-11-29 21:38:52 +01:00
Stefano Sanfilippo
971079b89d
Adding GPLv3 license.
2014-11-29 00:47:50 +01:00
Stefano Sanfilippo
f96376438c
Removing redundant static qualifier.
2014-11-28 20:03:49 +01:00
Stefano Sanfilippo
effa74c2ff
Adding location (line and column) to error report.
2014-11-28 20:02:41 +01:00
Stefano Sanfilippo
1cd565a1f0
Improving error reporting message.
2014-11-28 19:31:46 +01:00
Stefano Sanfilippo
917f511479
Removing redundant namespace qualifiers in %union
2014-11-28 19:07:47 +01:00
Stefano Sanfilippo
4a8377ed71
Using %code directives instead of {% %} prologue.
2014-11-28 19:06:27 +01:00
Stefano Sanfilippo
649797f13a
Generating a C++ reentrant parser.
2014-11-28 19:00:51 +01:00
Stefano Sanfilippo
e2a635e95f
Removed redundant comment.
2014-11-28 17:22:57 +01:00
Stefano Sanfilippo
97ec6b26f2
Moving .y and .l to .ypp and .lpp
2014-11-28 17:19:09 +01:00