Commit Graph

107 Commits

Author SHA1 Message Date
Stefano Sanfilippo
57defac719 Refactoring: less indents. 2014-11-28 20:19:19 +01:00
Stefano Sanfilippo
b31feeb4ea Adding operator << for Type enum. 2014-11-28 20:18:50 +01:00
Stefano Sanfilippo
f96376438c Removing redundant static qualifier. 2014-11-28 20:03:49 +01:00
Stefano Sanfilippo
7acb487cf7 Fix names in makefile. 2014-11-28 20:02:52 +01:00
Stefano Sanfilippo
effa74c2ff Adding location (line and column) to error report. 2014-11-28 20:02:41 +01:00
Stefano Sanfilippo
95cc9d4966 Adding -O2 to compiler command line. 2014-11-28 19:44:34 +01:00
Stefano Sanfilippo
262508fafd Using Pointer type instead of std::unique_ptr
For now, it's just an alias.
2014-11-28 19:40:47 +01:00
Stefano Sanfilippo
015f8ae6d1 Renaming List to more meaningful PointerList. 2014-11-28 19:37:14 +01:00
Stefano Sanfilippo
7050c5586e Introducing auto-free List<T> in Node.hpp 2014-11-28 19:32:35 +01:00
Stefano Sanfilippo
1cd565a1f0 Improving error reporting message. 2014-11-28 19:31:46 +01:00
Stefano Sanfilippo
e93fef76f1 Freeing Function objects before destroying program. 2014-11-28 19:15:36 +01:00
Stefano Sanfilippo
72b6c0253a Minor style cleanups. 2014-11-28 19:07:34 +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
66da783857 Plugged parser and lexer into main, updated Makefile. 2014-11-28 19:01:34 +01:00
Stefano Sanfilippo
5703593c9d Generating a C++ reentrant lexer. 2014-11-28 19:01:15 +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
2605a5f5ff Removing generated resources from gitignore. 2014-11-28 17:19:19 +01:00
Stefano Sanfilippo
97ec6b26f2 Moving .y and .l to .ypp and .lpp 2014-11-28 17:19:09 +01:00
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
67e5d3a4be Moving example to examples/, adding another one. 2014-11-27 22:55:08 +01:00
Stefano Sanfilippo
89f10a021f Alternate form for LT and GT operators. 2014-11-27 22:52:12 +01:00
Stefano Sanfilippo
9c728ef145 Ignoring deprecated-registers warning, since it's in generated code. 2014-11-27 22:20:03 +01:00
Stefano Sanfilippo
a68467d0fd Adding -Wall to command line and fixing warnings. 2014-11-27 22:16:30 +01:00
Stefano Sanfilippo
9184c45297 Fixing pointer deref gone wild. 2014-11-27 22:16:12 +01:00
Stefano Sanfilippo
d0f3d30643 Fixing two NPEs in case of missing else and missing main. 2014-11-27 22:10:10 +01:00
Stefano Sanfilippo
764e21abd6 Removing C leftovers. 2014-11-27 21:56:48 +01:00
Stefano Sanfilippo
fda1ae54bc Shorter prefix for parser pseudonamespace. 2014-11-27 21:55:40 +01:00
Stefano Sanfilippo
ce513643da Strongly typed enum for type tokens. 2014-11-27 21:53:25 +01:00
Stefano Sanfilippo
76ee587672 Use std::unique_ptr whenever possible. 2014-11-27 21:51:20 +01:00
Stefano Sanfilippo
9b32c4e4d4 Fixing global variable that was not caught in prefix renaming. 2014-11-27 21:50:40 +01:00
Stefano Sanfilippo
60136fc4e9 Minor cleanups to lexer. 2014-11-27 21:34:26 +01:00
Stefano Sanfilippo
88e78be419 Fixing swapped GTE and LTE. 2014-11-27 21:30:42 +01:00
Stefano Sanfilippo
13ccc9277e Alternate spelling for LTE and GTE operators. 2014-11-27 21:30:29 +01:00
Stefano Sanfilippo
5573307305 Removing redundant ; 2014-11-27 21:20:50 +01:00
Stefano Sanfilippo
1ff2a2dd24 Add flex output files to gitignore. 2014-11-27 20:52:44 +01:00
Stefano Sanfilippo
beab3a1512 Removing debug flag from Makefile. 2014-11-27 20:50:51 +01:00
Stefano Sanfilippo
7e9bc1a55e Adding required headers on top of file. 2014-11-27 20:43:25 +01:00
Stefano Sanfilippo
c326de1131 Blank line after function definition. 2014-11-27 20:43:09 +01:00
Stefano Sanfilippo
ae7c1f98d9 Optionally read and write to file. 2014-11-27 20:42:55 +01:00
Stefano Sanfilippo
12c5043778 Adding namespace declaration to lexer. 2014-11-27 20:02:15 +01:00
Stefano Sanfilippo
747bc16a85 Plugging AST nodes into semantic rules. 2014-11-27 20:01:52 +01:00
Stefano Sanfilippo
e65896f2c5 Updating Makefile. 2014-11-27 20:01:40 +01:00
Stefano Sanfilippo
37141d1e7a Implementing AST nodes. 2014-11-27 20:01:06 +01:00
Stefano Sanfilippo
a886ada349 main() should return 0, not void. 2014-11-27 20:00:19 +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
c9b53a7470 Removing unnecessary commas from examples. 2014-11-25 00:57:18 +01:00
Stefano Sanfilippo
9e12a95612 Renaming ASSERT_BEGIN and ASSERT_END into ASSERT and BANG. 2014-11-25 00:47:51 +01:00