|
23a92ca9bd
|
pull in getopt; add -o argument to specify output file name
|
2018-05-20 16:45:43 -04:00 |
|
|
46145fa975
|
write fewer spaces to C file
|
2018-05-20 16:27:44 -04:00 |
|
|
e4b7f5335f
|
preserve token order in list nodes
|
2018-05-20 16:24:05 -04:00 |
|
|
4ab2032c00
|
use a list instead of a vector for list Nodes
|
2018-05-20 16:22:12 -04:00 |
|
|
bd52a4c5d5
|
create C files with ".c" suffix
|
2018-05-20 16:16:46 -04:00 |
|
|
6217665076
|
fix adding all tokens to array in an enum_specifier rule
|
2018-05-20 16:13:35 -04:00 |
|
|
9f2f6be9bb
|
include doublequote characters in string literal token text
|
2018-05-20 16:11:36 -04:00 |
|
|
db08091cf4
|
compile the emitted C
|
2018-05-20 16:09:58 -04:00 |
|
|
2dea7d0bac
|
write C file
|
2018-05-20 16:04:44 -04:00 |
|
|
2d76d34bc7
|
begin getting ready to emit C
|
2018-05-20 15:42:16 -04:00 |
|
|
e1f1bbcbb8
|
store all parse tree entries in node objects
|
2018-05-19 22:49:32 -04:00 |
|
|
aca67c1a54
|
Create some list nodes
|
2018-05-19 21:31:23 -04:00 |
|
|
eef900bedc
|
allow brace-initialized arrays to be expressions
|
2018-05-12 20:33:08 -04:00 |
|
|
ba6a7317d1
|
allow __extension__ to precede expressions
|
2018-05-12 15:21:02 -04:00 |
|
|
478c053cab
|
support 'LL' integer suffix without 'u'
|
2018-05-12 15:09:47 -04:00 |
|
|
290c2e343e
|
support __inline__
|
2018-05-12 15:03:38 -04:00 |
|
|
e014f94f1f
|
add some gcc builtin float types
|
2018-05-12 15:02:09 -04:00 |
|
|
32e9d59e58
|
allow full expressions in attributes, not just primary expressions
|
2018-05-12 14:58:46 -04:00 |
|
|
f3c1570c1f
|
support __alignof__ expressions like sizeof()
|
2018-05-12 14:55:39 -04:00 |
|
|
db98fc1c7e
|
Allow anonymous structs/unions within structs/unions
|
2018-05-12 14:53:18 -04:00 |
|
|
e9931d576b
|
Support __extension__
|
2018-05-12 11:57:44 -04:00 |
|
|
6890ac97b5
|
Support inline/__inline
|
2018-05-12 11:54:14 -04:00 |
|
|
c5764ed15e
|
allow asm volatile statements
|
2018-05-12 11:43:07 -04:00 |
|
|
b40f501d2a
|
add asm statements/expressions
|
2018-05-12 11:41:45 -04:00 |
|
|
c5c0bddc33
|
Allow multiple consecutive string literals
|
2018-05-12 10:52:44 -04:00 |
|
|
2c33cccaf7
|
Allow multiple consecutive __attribute__ blocks
|
2018-05-09 20:51:22 -04:00 |
|
|
ee0dd63670
|
add support for __restrict keyword
|
2018-05-09 20:49:27 -04:00 |
|
|
fa32c9bba6
|
Allow TYPE_NAME or IDENTIFIER to follow struct/union
|
2018-05-09 20:27:29 -04:00 |
|
|
aa6ef6b8d6
|
Add gcc-style attributes to parser
|
2018-05-09 20:24:12 -04:00 |
|
|
625410faa0
|
Add some known built-in types to consider as TYPE_NAME tokens instead of IDENTIFIERs
|
2018-05-09 19:48:42 -04:00 |
|
|
25f7c43d3b
|
lexer: return TYPE_NAME instead of IDENTIFIER for identifiers that were previously typedeffed
|
2018-05-08 22:16:53 -04:00 |
|
|
0a2e719f2c
|
add list, declarator node types
|
2018-05-08 22:10:06 -04:00 |
|
|
86c6243053
|
turn on bison output file to see conflicts
|
2018-05-08 20:50:26 -04:00 |
|
|
d5ae35df60
|
introduce TYPE_NAME token type
|
2018-05-08 20:39:49 -04:00 |
|
|
584fdae2ba
|
set token text to string literal value for string literal tokens
|
2018-05-08 20:26:34 -04:00 |
|
|
051dd9b9c1
|
fix indentation
|
2018-05-08 20:21:29 -04:00 |
|
|
24f18c5233
|
remove String module; use std::string
|
2018-05-08 20:13:47 -04:00 |
|
|
accaed47bc
|
add infrastructure to keep track of observed type names in the future
|
2018-05-08 20:03:20 -04:00 |
|
|
07fb50bb86
|
convert main module to a C++ module
|
2018-05-08 19:59:57 -04:00 |
|
|
8733911e82
|
support C++ in build
|
2018-05-08 19:55:40 -04:00 |
|
|
600d01193c
|
update to waf 2.0.7
|
2018-05-08 19:36:16 -04:00 |
|
|
895ea27016
|
parser rewrite according to ANSI C grammar
same problem as before - conflict in IDENTIFIER as a type name versus an actual identifier
|
2018-05-07 23:48:08 -04:00 |
|
|
a7d63e51e5
|
rewrite parser with C Syntax BNF file
|
2018-05-07 23:21:25 -04:00 |
|
|
e7835b4fac
|
start rewriting grammar
|
2018-04-24 21:10:48 -04:00 |
|
|
89e003b330
|
another fix to error location reporting
|
2018-04-24 21:05:33 -04:00 |
|
|
3cd2d96611
|
Display original source file location for errors
|
2018-04-23 23:51:35 -04:00 |
|
|
49afce6095
|
use last_column instead of first_column for error column tracking
|
2018-04-23 23:26:43 -04:00 |
|
|
45de80c852
|
show source line on error
|
2018-04-23 23:11:34 -04:00 |
|
|
fc5dfb7744
|
move C code out of parser.y to parser.c
|
2018-04-23 22:48:59 -04:00 |
|
|
8db0a47fb4
|
remove user_action() prototype
|
2018-04-23 22:25:13 -04:00 |
|