aboutsummaryrefslogtreecommitdiff
path: root/src/parser.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Replace many uses of `heap_allocator()` with `permanent_allocator()`gingerBill2021-09-131-6/+4
|
* Add `-strict-style-init-only`gingerBill2021-09-091-0/+2
|
* Add calling convention `"system"` which is an alias for `"stdcall"` on ↵gingerBill2021-09-081-0/+6
| | | | Windows and `"cdecl"` on other platforms
* Strip semicolons; Make `odin strip-semicolon` replace `..` with `..=` if ↵gingerBill2021-09-061-0/+4
| | | | used as a binary operator
* Strip semicolon if followed by a `}` or `)` on the same linegingerBill2021-08-311-0/+12
|
* Correct parsing rules for `#assert` directives for semicolonsgingerBill2021-08-311-32/+12
|
* Remove dead code and add debug messagesgingerBill2021-08-311-25/+8
|
* Add semicolon stripping command: `odin strip-semicolon`, has the same ↵gingerBill2021-08-311-6/+13
| | | | parameters as `odin check`
* Make `-insert-semicolon` the default nowgingerBill2021-08-311-92/+22
|
* Disable local mutex for the time being.gingerBill2021-08-261-1/+2
|
* Use local mutex for each `AstFile.arena`gingerBill2021-08-261-1/+2
|
* Unify thread pool logic across the rest of the compiler, using a global ↵gingerBill2021-08-261-32/+37
| | | | thread pool
* Change the implementation of `Arena` to use virtual memory, and remove the ↵gingerBill2021-08-261-3/+2
| | | | old gbArena code
* Simplify logic for `parse_binary_expr`gingerBill2021-08-251-16/+17
|
* Remove the old `inline` and `no_inline` tokensgingerBill2021-08-231-24/+1
|
* Rewrite thread_pool.cppnakst2021-08-221-2/+1
|
* Merge branch 'master' into multi-pointersgingerBill2021-08-221-8/+18
|\
| * Improve error handling for missing semicolon separators in a `for` loopgingerBill2021-08-221-8/+18
| |
* | Add multi-pointer types `[^]T`gingerBill2021-08-211-2/+14
|/
* Enforce `core:builtin` and `core:intrinsics` for importsgingerBill2021-08-211-1/+6
|
* Remove unused codegingerBill2021-08-191-3/+0
|
* Remove dead code, and add an extra mutexgingerBill2021-08-181-17/+5
|
* Add mutex to Scope lookups and insertionsgingerBill2021-08-181-13/+13
|
* Allow `+` in import pathsgingerBill2021-08-161-2/+1
|
* Improve parsing for `or_return`; allow `#force_inline foo() or_return;`gingerBill2021-08-161-6/+21
|
* Add `clone_ast` for `or_else` and `or_return`gingerBill2021-08-151-0/+7
|
* Make `or_else` and `or_return` operators (binary and suffix respectively)gingerBill2021-08-151-4/+34
|
* Improve error handling for field list prefixesgingerBill2021-08-151-22/+29
|
* Minor clean up of `parse_field_prefixes`gingerBill2021-08-151-37/+48
|
* Add `#any_int` directive to replace `auto_cast` uses on parameters.gingerBill2021-08-151-2/+9
|
* Add assignment statement to `#no_bounds_check` etc rules. Correct ↵gingerBill2021-08-151-1/+2
| | | | `os_linux.odin` usage.
* Define where `#bounds_check`/`#no_bounds_check` can be appliedgingerBill2021-08-151-42/+72
|
* Improve parsing handling for the `{ return }` casesgingerBill2021-08-091-1/+12
|
* Minor procedure renamegingerBill2021-08-081-1/+1
|
* Improve core:odin/parsergingerBill2021-08-041-2/+2
|
* Improve error message when using a comma rather than a semicolon in a `bit_set`gingerBill2021-08-031-0/+6
|
* Remove the literal conversion logic to the parser from the tokenizergingerBill2021-08-021-5/+31
|
* Begin optimizing tokenizer; Replace `gb_utf8_decode` with `utf8_decode` (CC ↵gingerBill2021-08-011-5/+5
| | | | but easier to change later)
* Define which mutexes are blocking and recursive explicitlygingerBill2021-07-271-15/+15
|
* Big simplification and improvement of the entity collection system, reducing ↵gingerBill2021-07-271-0/+7
| | | | unneeded steps for packages
* Improve default scope sizegingerBill2021-07-271-0/+24
|
* Fix syntax error for a missing package namegingerBill2021-07-261-2/+8
|
* INTERNAL USE ONLY: `//+lazy` build flaggingerBill2021-07-251-2/+13
|
* Move things around for sanity checking for multithread preparationgingerBill2021-07-101-6/+10
|
* Fix #1054gingerBill2021-07-101-3/+11
|
* Remove `try`; Replace `try x else y` with `or_else(x, y)`gingerBill2021-07-051-36/+0
|
* Fix `try` parsing for expression statementsgingerBill2021-07-041-0/+1
|
* Try `try` and `or_else` built-in procedures with operators `try` and `try else`gingerBill2021-07-041-0/+35
|
* Make default calling convention code more correct to readgingerBill2021-06-081-1/+1
|
* Replace `js_wasm32` with `freestanding_wasm32`gingerBill2021-06-081-1/+1
|