summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* native.c: add some asserts and errorsJari Vetoniemi2018-09-28
|
* types: handle raw string bytesJari Vetoniemi2018-09-28
|
* expr: fix || and && operationsJari Vetoniemi2018-09-28
|
* expr: add missing modulo operationJari Vetoniemi2018-09-28
|
* get rid of the notesJari Vetoniemi2018-09-28
|
* elf.fspec: more complete versionJari Vetoniemi2018-09-27
|
* compiler: print the ast tree more nicelyJari Vetoniemi2018-09-27
|
* compiler: make endianess a filterJari Vetoniemi2018-09-27
| | | | | | | | endianess is just a bunch of bitflips anyways syntax for this is harmful as sometimes the files describe endianess itself thus filter is more flexible. Also, make it possible to filter non variable declarations as well.
* expr: apparently strings are streams tooJari Vetoniemi2018-09-27
| | | | rename collapsestr and collapse to just stream
* compiler: implement enum countingJari Vetoniemi2018-09-27
|
* implement the binary number typeJari Vetoniemi2018-09-27
|
* flac.fspec, enum instead of rangeJari Vetoniemi2018-09-27
|
* share lex blocks between functions and referencesJari Vetoniemi2018-09-26
|
* make: fix colm depsJari Vetoniemi2018-09-26
|
* s/tragety/strategy/Jari Vetoniemi2018-09-26
|
* undo some crap I did to flac specJari Vetoniemi2018-09-26
|
* types.lm: use lex blocksJari Vetoniemi2018-09-26
| | | | So the matcher wont include the tokens used by other tokens
* make: depend on the included .lm filesJari Vetoniemi2018-09-26
|
* New makefileJari Vetoniemi2018-09-26
|
* add evil fspec fileJari Vetoniemi2018-09-26
|
* some future builtin for bittesting maybe?Jari Vetoniemi2018-09-26
|
* fix some parsing bugsJari Vetoniemi2018-09-26
|
* add some other spec filesJari Vetoniemi2018-09-26
|
* fixup spec filesJari Vetoniemi2018-09-26
|
* remove type::name add endianess supportJari Vetoniemi2018-09-26
| | | | | type::name is too agressive as it clashes with keywords use reference::variable::type and reference::function::type instead
* Indicate fields with slices in outputJari Vetoniemi2018-09-26
|
* More parsing fixes for the fspec files I haveJari Vetoniemi2018-09-26
|
* Nicer elf specJari Vetoniemi2018-09-26
|
* Print out select expression informationJari Vetoniemi2018-09-26
|
* Add some commentsJari Vetoniemi2018-09-26
|
* Fix some parsing mistakesJari Vetoniemi2018-09-26
|
* Get rid of the evil tabsJari Vetoniemi2018-09-26
|
* Goodbye C compiler, hello colm compilerJari Vetoniemi2018-09-26
|
* redesignJari Vetoniemi2018-09-19
|
* Add notes.txtJari Vetoniemi2018-02-23
|
* tmpJari Vetoniemi2018-02-23
|
* xi2path: Cast before snprintfJari Vetoniemi2018-02-23
| | | | | Make sure results are unsigned Found by cppcheck
* Makefile: Add -Warray-bounds=2Jari Vetoniemi2018-02-23
|
* wipJari Vetoniemi2018-02-23
|
* lexer.rl: hex can be as long as we wantJari Vetoniemi2018-02-23
| | | | | | | | hex expression shared the esc_hex expression before. But esc_hex is limited to 2 hexdecimal characters, and thus poor choice for parsing hexdecimal numbers in source. (This is different from C which allows "n" length hex escapes causing problems when you mix hex escapes with strings for example)
* ragel.rl: mark anything as errorJari Vetoniemi2018-02-23
| | | | | | | | The word label is mainly meant to define printable and conceated characters. In print_mark we use it to print tail in case we hit the valid* kleene star expression. Otherwise we will just show '^' mark on whatever byte we failed on. This allows to catch semantical failures such as having newlines at wrong place etc..
* ragel.rl: better error matchingJari Vetoniemi2018-02-23
| | | | | | Combine tail action into mark. Tokenize on 'space <valid>' or on punctuation. Treat single printable or valid* as word.
* doc: Add work-in-progress asciidocJari Vetoniemi2017-12-07
|
* dump.c: Postcond that we actually read somethingJari Vetoniemi2017-12-07
|
* Add assert to tell compiler wrong behaviour is UDHEADmasterJari Vetoniemi2017-10-01
|
* Make -Wstrict-overflow less paranoidJari Vetoniemi2017-10-01
| | | | Seems to do stuff only when optimizations are enabled
* Fix install ruleJari Vetoniemi2017-10-01
|
* s/s32/s64/Jari Vetoniemi2017-08-15
|
* ragel.rl: Add some asserts to confirm inputJari Vetoniemi2017-05-07
| | | | Just some hardening: p should always be equal or behind pe.
* ragel.rl: Make search_err read "p" before stopJari Vetoniemi2017-05-07
| | | | | | | | | If we stop before reading the "p" false positive may be returned since "p" may be the start of new token. Thus case like `type: 3u8[4] str;` would fail to mark the real error since '3' is not read. Thus start marking from the last valid token that is ':'.