gingerBill
328d893cb5
#unroll(N) for
2025-01-10 12:22:18 +00:00
gingerBill
a7d7c92a53
#min_field_align & #max_field_align; deprecate #field_align in favour of #min_field_align
2024-09-30 13:05:28 +01: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
Laytan Laats
6ef49d4f24
core/odin: support #type_assert and #no_type_assert
2024-08-30 23:21:35 +02:00
Laytan Laats
f0840ed24e
core/odin: support field tags on bit_field fields
...
Fixes #4044
2024-08-11 20:59:54 +02:00
Damian Tarnawski
478b2d7444
Correct the Array_Type.len comment and assign tok when making Ellipsis node
2024-07-29 22:14:42 +02:00
gingerBill
3ba19d94cf
Add #no_capture to core:odin/ast
2024-07-14 11:58:26 +01:00
Jeroen van Rijn
aa27cd4b0b
Allow core:odin to parse @(require) import
2024-06-27 16:14:16 +02:00
Feoramund
b2f9f0af68
Fix some typos
2024-06-04 19:01:30 -04:00
gingerBill
d91054b615
Change parser to use ^Expr rather than string for the foreign import paths
2024-05-28 00:27:13 +01:00
Laytan Laats
af6d2480fa
add bit_field parsing to core:odin/parser
...
Also adds it to the core type thingy like it is in the compiler.
2024-04-10 01:01:32 +02:00
gingerBill
29e5f94c2a
Add #no_broadcast procedure parameter to disallow automatic array programming broadcasting on procedure arguments
2024-03-21 11:52:48 +00:00
gingerBill
68df35b378
Add #field_align(N)
...
It sets the minimum alignment for the fields within a struct. This cannot be used with `#packed`, but can be used with `#align(N)`.
If `#align(N)` is less than `#field_align(N)`, then a warning will be printed.
2024-01-28 17:33:29 +00:00
gingerBill
14adcb9db8
Use or_break and or_continue where appropriate in the core library
2023-09-30 15:34:39 +01:00
gingerBill
41a22bd83d
or_break and or_continue to core:odin packages
2023-09-30 15:09:59 +01:00
Fabian Sperber
886d0de040
Remove auto_cast from field_flags
...
- auto_cast is parsed as its own expression
2023-09-05 23:14:55 +02:00
Fabian Sperber
16d797cb01
Add #const field flag
2023-09-05 22:57:40 +02:00
Fabian Sperber
bbf9678756
Fix parsing #force_inline call expression with or_return
2023-09-05 22:35:30 +02:00
DanielGavin
64a63b3879
Add #reverse to odin/parser.
2023-09-03 16:15:03 +02:00
gingerBill
7abaf77292
Add struct #no_copy
2023-04-15 15:47:18 +01:00
gingerBill
ef372bd861
Replace #optional_second with #optional_allocator_error
2022-09-12 13:08:32 +01:00
gingerBill
5e3cf45df3
Add #soa pointer type to aid with refactoring to #soa data types
...
a: #soa[16]Foo
p := &a[6]
#assert(type_of(p) == #soa^#soa[16]Foo)
p^.x = 123
p.x = 123
2022-08-08 15:07:00 +01:00
gingerBill
97acc57649
Simplify field prefix handling
2022-08-01 13:17:10 +01:00
gingerBill
83c8c48ed7
Simplify ast parsing for prefixes
2022-08-01 13:07:49 +01:00
gingerBill
13cb894b30
Update core:odin for union #shared_nil
2022-03-24 12:00:27 +00:00
gingerBill
ad6ea3d6aa
Replace any with union for subtyping in core:odin/ast
2022-02-06 13:31:16 +00:00
gingerBill
cda9fd5271
Add tag to ast.Comp_Lit
2022-02-06 11:59:12 +00:00
Tetralux
9b2fe56d14
Parse #no_nil on unions
2021-12-25 18:58:08 +00:00
Daniel Gavin
b0db90de96
Add Any_Int as allowed flag in field signatures.
2021-11-09 14:29:53 +01:00
gingerBill
90d587df13
Support matrix type in core:odin
2021-10-27 23:49:37 +01:00
gingerBill
251da264ed
Remove unneeded semicolons from the core library
2021-08-31 22:21:13 +01:00
gingerBill
19bf12aa09
Update odin/ast for multi pointers
2021-08-22 11:46:12 +01:00
gingerBill
4e1c9b71f4
Update core:odin/* for or_else and or_return
2021-08-15 19:05:55 +01:00
gingerBill
9e2eb717fe
Correct newline_limit logic
2021-05-21 15:22:35 +01:00
gingerBill
df3512b112
Make core:odin use a string for the source rather than []byte
2021-05-16 12:38:27 +01:00
gingerBill
c3b3194a00
Update builtin procedures to support the new allocator features (without breaking other code)
2021-04-19 22:44:20 +01:00
gingerBill
bec42e8dd3
Improve core:odin/ast ast.Range_Stmt to use generic number of vals rather than the fixed two to aid with parsing errors
2021-03-24 12:34:06 +00:00
gingerBill
08f7d3edbe
Allow $ in polymorphic record parameter fields (but disallow mixing)
2021-03-23 22:59:10 +00:00
gingerBill
41b854f192
Remove #opaque types
2021-02-23 15:45:06 +00:00
gingerBill
28f279329d
Remove bit_field keyword and parsing logic
2021-02-23 15:29:54 +00:00
gingerBill
28ed310f31
Remove "pure" and "pure_none" calling conventions
2021-02-23 13:10:23 +00:00
gingerBill
cffbd2d276
Add odin/parser/parse_files.odin
2020-12-13 17:09:41 +00:00
DanielGavin
934809397f
small fixes to the parser
2020-12-09 21:33:10 +01:00
gingerBill
21d8562923
Add ast.walk and ast.inspect
2020-12-06 12:59:26 +00:00
gingerBill
ea60db9f53
Add inline asm expression to odin/parser
2020-12-06 01:14:55 +00:00
gingerBill
d94414b0f4
Correct ternary if/when parsing
2020-12-06 00:15:35 +00:00
gingerBill
80fead1de5
Add ast.Selector_Expr_Call
2020-12-06 00:03:45 +00:00
gingerBill
fc4fdd588e
Remove usage of do in core library
2020-09-23 17:17:14 +01:00
gingerBill
4cf240ca05
Fix odin/parser issues
2020-09-15 22:14:23 +01:00
zhibog
c704de8442
Added the #maybe directive to the union struct in the AST. Also added it to the parsing code for a union.
2020-04-25 18:21:32 +02:00