aboutsummaryrefslogtreecommitdiff
path: root/src/parser.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Add `#force_inline` parsing directly to expression statementsgingerBill2021-02-251-0/+4
|
* Remove `#force_inline for` and only have `#unroll for`gingerBill2021-02-251-1/+1
|
* Build tag to make all declarations within a file private to the package ↵gingerBill2021-02-231-0/+2
| | | | `//+private`
* Add deprecation message for `inline` and `no_inline` to use `#force_inline` ↵gingerBill2021-02-231-0/+2
| | | | and `#force_no_inline` instead
* Remove `#opaque` typesgingerBill2021-02-231-12/+2
|
* Remove `bit_field` keyword and parsing logicgingerBill2021-02-231-60/+0
|
* Remove `#opaque` usage in core librarygingerBill2021-02-231-16/+0
|
* Deprecate `inline for` in favour of `#unroll for`gingerBill2021-02-231-23/+3
|
* Add `#force_inline`, `#force_no_inline` and `#unroll` for the transition to ↵gingerBill2021-02-231-78/+98
| | | | | | deprecate and then remove the keywords `inline` and `no_inline` `inline for` will be replaced with `#unroll for`
* Remove `"pure"` and `"pure_none"` calling conventionsgingerBill2021-02-231-2/+0
|
* Remove `opaque` keyboardgingerBill2021-02-231-11/+3
|
* Add extra error checking in parser.cppgingerBill2021-01-151-0/+13
|
* Improve -insert-semicolon rulesgingerBill2020-12-091-6/+3
|
* Fix typos for `-insert-semicolon`gingerBill2020-12-091-10/+10
|
* Merge branch 'master' into parser-experimentsgingerBill2020-12-061-100/+184
|\
| * Deprecate keyword `opaque` in favour of `#opaque`gingerBill2020-12-041-0/+6
| |
| * Remove `const` as a (reserved) keywordgingerBill2020-12-041-3/+2
| |
| * Update `odin doc` to support multiple package outputs by passing multiple ↵gingerBill2020-11-181-11/+66
| | | | | | | | | | | | | | paths; Replace `-all` with `-short` Example: odin doc core/path core/path/filepath
| * Fix parser logic for first comment group line in a filegingerBill2020-11-171-0/+6
| |
| * Basic `odin doc` supportgingerBill2020-11-171-5/+1
| |
| * Add `-show-unused` (Shows unused package declarations of all imported packages)gingerBill2020-11-171-3/+3
| | | | | | | | Crude output at the moment but better than nothing
| * Minimize memory usage for AST nodes by using Slice<T> rather than Array<T> ↵gingerBill2020-11-161-53/+68
| | | | | | | | when the parameter doesn't need to grow
| * Improve logic for x->y() shorthandgingerBill2020-11-151-12/+12
| |
| * Begin clarifying allocation patterns by changing from `heap_allocator` to ↵gingerBill2020-11-151-18/+25
| | | | | | | | specific arenas
| * Fix default parameters on record typesgingerBill2020-11-091-2/+2
| |
* | Add experimental `-insert-semicolon` functionality to tokenizer and parsergingerBill2020-11-011-10/+104
|/
* Inline asm expression (-llvm-api)gingerBill2020-10-241-0/+105
| | | | | | | | | | | | See https://llvm.org/docs/LangRef.html#inline-assembler-expressions Example: ``` x := asm(i32) -> i32 { "bswap $0", "=r,r", }(123); ``` Allowed directives `#side_effect`, `#align_stack`, `#att`, `#intel` e.g. `asm() #side_effect #intel {...}`
* Begin work on making packages import assembly sort files (.S)gingerBill2020-10-161-1/+48
|
* Add `+build ignore` taggingerBill2020-10-151-21/+28
|
* Enforce `do` bodies to be on the same line as the control statement's ↵gingerBill2020-10-141-0/+25
| | | | condition or token
* Add `-disallow-do`gingerBill2020-09-231-0/+25
|
* Fix +build tag logicgingerBill2020-09-151-8/+8
|
* Improve error message for multi-valued global declarations not be allowedgingerBill2020-09-121-1/+6
|
* Update math and math/linalg; add "pure_none" calling conventiongingerBill2020-09-101-0/+1
|
* Revert accidental removal of `#const` for procedure variable parameters #718gingerBill2020-08-261-0/+4
|
* Remove some dead codegingerBill2020-07-141-4/+0
|
* Fix WASM foreign import namesgingerBill2020-06-041-7/+8
|
* Improve performance of tokenization and parsinggingerBill2020-05-271-29/+51
|
* Minor tokenizer performance improvementsgingerBill2020-05-271-3/+10
|
* Make the `using import` deprecation warning an errorgingerBill2020-05-231-1/+1
|
* Add `"pure"` procedure typesgingerBill2020-05-231-0/+1
|
* Selector Call Expressions: `x->y(123) == x.y(x, 123)`gingerBill2020-05-221-2/+22
|
* Remove the need for `type_of`, `size_of`, `align_of`, `offset_of` to be keywordsgingerBill2020-05-221-16/+0
|
* Relative pointersgingerBill2020-05-151-1/+16
|
* (#594) Add `#config` to replace `#defined`; Restrict `#defined` within ↵gingerBill2020-05-131-0/+3
| | | | procedure bodies to remove race condition
* `#optional_ok` tag for proceduresgingerBill2020-04-191-0/+1
|
* Simplify compiler's `Map` and create a `StringMap` specifically for stringsgingerBill2020-04-131-5/+5
|
* Add extra guards for window-only performance checkinggingerBill2020-04-071-4/+4
|
* Add extra internal memory analysisgingerBill2020-04-061-0/+7
|
* `x if cond else y` and `x when cond else y` expressionsgingerBill2020-03-051-0/+53
|