Jeroen van Rijn
6b661becae
Merge pull request #7375 from thetarnav/remove-inline-keywords-core-odin
...
Remove `inline` and `no_inline` keywords from `core:odin`
2026-08-18 19:03:00 +02:00
thetarnav
f1bbd8fe49
Remove inline and no_inline keywords from core:odin
...
Odin uses `#force_inline` and `#force_no_inline` directives, not
keywords.
The cpp parser does not define them as keywords:
/home/thetarnav/Projects/odin/src/tokenizer.cpp:86
Nor does the grammar spec: https://odin-lang.org/spec/grammar/#keywords
2026-08-18 18:25:22 +02:00
Fernando Nunes
3020cecd08
core/odin/tokenizer: fix broken double-checked lock in init
2026-08-08 20:25:52 -03:00
Brad Lewis
e5a9dd8567
Set token kind to float for hex floats
2026-07-24 12:41:57 +10:00
gingerBill
13487a45f2
Fix typo
2026-05-26 10:58:54 +01:00
gingerBill
d762a8247f
Fix look up table
2026-05-25 11:12:49 +01:00
gingerBill
fb8a9d0839
Support ** as expand_values operator: **x == expand_values(x)
2026-05-25 10:28:15 +01:00
gingerBill
757bdf0e87
Remove TODO
2026-03-01 13:06:11 +00:00
gingerBill
05a951b338
Fix name lookup
2026-03-01 13:05:51 +00:00
gingerBill
c685c312c5
Make the tokenizer work with a custom hash map protected by a spinlock
2026-03-01 13:00:27 +00:00
Jeroen van Rijn
7a9ea3ee6d
Further overhaul of package line comments.
2025-10-09 23:05:29 +02:00
Jeroen van Rijn
8a35acd506
More package lines.
2025-10-09 20:11:06 +02:00
Brad Lewis
8bab146b2d
Check for EOF when scanning file tags
2025-08-19 07:20:31 -04:00
IllusionMan1212
d52e0a892c
fix(core:{odin,c}/tokenizer): Don't error on valid \uE000 codepoint
2024-10-13 00:01:41 +02:00
Karl Zylinski
b12d312408
core/odin: Added new file tag syntax as token. parse_file stores a list of tags that the file tag parser can use later.
2024-09-14 17:59:50 +02:00
gingerBill
8642d719f0
Imply #no_capture to all variadic parameters
2024-07-14 12:19:47 +01:00
gingerBill
c7bd954752
Add more uses of #no_capture
2024-07-14 11:56:04 +01:00
RilleP
95a38d5a96
Merge branch 'master' into parsing-package-fixes
2024-04-10 19:10:33 +02:00
gingerBill
213b2fd0f8
Add bit_field as a keyword
2024-02-22 14:01:23 +00:00
Rikard Petré
239d4e1076
odin/tokenizer: Reset insert_semicolon to false in tokenizer.init to fix bug when tokenizing multiple files.
2024-01-20 16:09:41 +01:00
Fabian Sperber
bce66e3b42
Add or_break and or_continue to the list of tokens that have an automatic semicolon added at the end of the line
2023-10-09 21:48:04 +02:00
gingerBill
648b83d6ea
Add or_break and or_continue constructs
2023-09-30 15:04:17 +01:00
gingerBill
44ea82f845
Clean up usage of using throughout core and vendor
2023-07-31 11:46:40 +01:00
gingerBill
90d587df13
Support matrix type in core:odin
2021-10-27 23:49:37 +01:00
Daniel Gavin
a2a7647c90
Fix '>>' operand being tokenized correctly and switch statement with bare semicolon.
2021-09-20 20:12:13 +02:00
gingerBill
ca33cb990b
Strip semicolons in core which were missing
2021-09-08 13:12:38 +01:00
gingerBill
251da264ed
Remove unneeded semicolons from the core library
2021-08-31 22:21:13 +01:00
gingerBill
4e1c9b71f4
Update core:odin/* for or_else and or_return
2021-08-15 19:05:55 +01:00
gingerBill
dd8fa1d690
Prefer ..= over ..
2021-08-04 00:36:10 +01:00
gingerBill
afff9478c8
Make core:odin/tokenizer be consistent with the compiler's version
2021-08-03 23:27:26 +01:00
Daniel Gavin
44ee0f2cdc
Merge branch 'master' into prototype-fmt
2021-05-20 12:15:14 +02:00
gingerBill
df3512b112
Make core:odin use a string for the source rather than []byte
2021-05-16 12:38:27 +01:00
gingerBill
ce08e832f7
Allow ..= alongside .. as a "full range" operator; Update core:odin/parser etc
2021-05-16 12:34:35 +01:00
Daniel Gavin
9c6ab05981
fix tokenizer for ~= and better struct aligning
2021-04-29 00:51:24 +02:00
gingerBill
54e6c50769
Implement f16 functionality
2021-04-01 10:06:00 +01:00
DanielGavin
02bbac0903
changed error
2021-03-30 12:40:40 +02:00
DanielGavin
b8658547e0
Give error if raw literal hits EOF, and stop removing .Using if it exists in flags and allowed_flags.
2021-03-30 12:38:58 +02:00
gingerBill
aa93305015
Replace usage of inline proc with #force_inline proc in the core library
2021-02-23 16:14:47 +00:00
gingerBill
28f279329d
Remove bit_field keyword and parsing logic
2021-02-23 15:29:54 +00:00
gingerBill
908a403d78
Add #force_inline, #force_no_inline and #unroll for the transition to deprecate and then remove the keywords inline and no_inline
...
`inline for` will be replaced with `#unroll for`
2021-02-23 14:37:05 +00:00
DanielGavin
934809397f
small fixes to the parser
2020-12-09 21:33:10 +01:00
gingerBill
98c8fde098
Remove unused tokens
2020-12-06 13:17:48 +00:00
gingerBill
ea60db9f53
Add inline asm expression to odin/parser
2020-12-06 01:14:55 +00:00
gingerBill
ca4657fd31
Add custom semicolon insertion to odin/tokenizer and odin/parser
2020-12-06 00:47:58 +00:00
gingerBill
d94414b0f4
Correct ternary if/when parsing
2020-12-06 00:15:35 +00:00
gingerBill
4cf240ca05
Fix odin/parser issues
2020-09-15 22:14:23 +01:00
gingerBill
e92fdb4a99
x if cond else y and x when cond else y expressions
2020-03-05 20:34:30 +00:00
gingerBill
159150c6d9
Allow not_in as keyword over notin, but still allow notin to work
2020-01-16 10:00:14 +00:00
gingerBill
d1c9fd4e01
Implement #complete switch by default, replace with #partial switch #511
2019-12-22 12:03:48 +00:00
gingerBill
1416946757
Add token.odin
2019-10-23 21:42:28 +01:00