gingerBill
83a10e929f
Require space after the prefix of #+build style tags
2026-01-26 10:49:24 +00:00
gingerBill
cc4a7ec11c
Merge pull request #6166 from laytan/vet-file-tags-in-addition-to-command-line
...
make #+vet tags always work in addition to command line flags
2026-01-24 13:55:41 +00:00
Jeroen van Rijn
1c529d8cb2
Fix #6165
2026-01-24 14:06:31 +01:00
Laytan Laats
a9a65b5377
make #+vet tags always work in addition to command line flags
2026-01-24 12:59:55 +01:00
Jeroen van Rijn
ce71227b6b
Fix #6130
2026-01-22 15:20:39 +01:00
gingerBill
59ae82634e
Add preserve/most and preserve/all
2026-01-15 17:52:36 +00:00
gingerBill
5f07055ac1
Add #must_tail and "preserve/none" calling convention
2026-01-15 17:28:28 +00:00
gingerBill
0366cd3304
Add #must_tail (similar syntax to #force_inline
2026-01-15 16:32:52 +00:00
Krzesimir Nowak
0bf4ffe469
Fix handling of #force_inline
2025-12-29 22:08:56 +01:00
gingerBill
2e6554b8c8
Disallow importing directories with an .odin extension/suffix
2025-12-26 11:49:46 +00:00
Krzesimir Nowak
a5809d0185
Fix #packed #all_or_none
2025-12-18 15:04:34 +01:00
gingerBill
fc2cb8fb39
Remove #no_copy
2025-11-05 13:44:14 +00:00
gingerBill
593d2e6daa
Add #all_or_none
2025-11-05 13:30:40 +00:00
gingerBill
0972690e14
Add suggestion for T[] to be []T if a type is allowed in that parsing context
2025-10-30 09:16:19 +00:00
gingerBill
025cb03242
Add all-bits to feature tag
2025-10-09 15:02:16 +01:00
gingerBill
547477abf6
Add #+test to replace _test.odin
2025-09-28 20:47:32 +01:00
gingerBill
5ea2e1fe60
Minimize mutex usage when in single threaded mode.
2025-09-10 21:41:52 +01:00
gingerBill
34e3d30780
More thread contention removal
2025-09-10 20:51:52 +01:00
gingerBill
7b5cee9f1e
Correct #+feature check
2025-08-08 10:50:24 +01:00
gingerBill
ee01643229
Add -integer-division-by-zero:self
2025-08-08 10:41:05 +01:00
gingerBill
991883d0e1
Add #+feature integer-division-by-zero:<string>
2025-08-08 10:24:44 +01:00
gingerBill
513e6daace
Merge pull request #5081 from Lperlind/vet-explicit-allocators
...
Add -vet-explicit-allocators
2025-07-22 11:06:12 +01:00
Harold Brenes
7c917d56e9
Check for invalid subtargets.
...
- Add 'ios' pseudo-subtarget which triggets with either iPhone or iPhoneSimulator subtargets.
- Treat an explicit 'default' subtarget as exclusive only to the default subtarget, not an other platform-compatible subtargets.
- 'generic' continues to resolve to true for any platform-compatible subtarget as it names appears to imply such behavior.
2025-07-20 14:35:06 -04:00
Harold Brenes
b811414ed1
Use fi.is_dir instead of path_is_directory() when checking if an import is a directory with a .odin extension.
2025-07-13 15:24:53 -04:00
gingerBill
38faec757d
Correct consume comment groups in both parsers
2025-07-11 18:41:40 +01:00
Hayden Gray
ccdd14394e
[parser.cpp] - packages with .odin in the name no longer attempt
...
to parse as odin files
2025-06-05 11:24:50 -04:00
gingerBill
74bab6d42f
Fix #5232 by adding an edge case
2025-05-29 16:29:52 +01:00
Lucas Perlind
65b4c793f0
Add -vet-explicit-allocators
...
This vet flag will make it so that allocators must be explicitly used
in places where context.allocator and context.temp_allocator are a
procedure parameter.
The goal of this flag is to prevent using the context.allocator in
cases where a different allocator was meant to be used.
Some code bases default context.allocator to nil/panic allocator
to catch this at runtime. This effectively makes it a compile
time error instead.
2025-04-27 22:47:03 +10:00
gingerBill
1f814c33dc
Support subtargets in build tags: #build darwin:generic and #build linux:android, darwin:ios
2025-04-10 11:36:03 +01:00
gingerBill
d23453811d
Improve semicolon checking rules when parsing
2025-02-24 13:13:36 +00:00
gingerBill
de755f95ec
Minor rearrange for parsing field lists
2025-02-22 17:58:14 +00:00
gingerBill
875dbf3140
Disallow syntax: proc(x,:T)
2025-02-22 17:56:42 +00:00
gingerBill
328d893cb5
#unroll(N) for
2025-01-10 12:22:18 +00:00
gingerBill
7da7d4e410
Allow #+ tags on single files
2025-01-05 15:41:51 +00:00
gingerBill
bca08d3b85
Make -no-dynamic-literals the default now
2025-01-05 13:33:06 +00:00
gingerBill
2efe4c2d68
Add #+feature dynamic-literals
2025-01-05 13:19:10 +00:00
gingerBill
b3d1d7b835
Make #relative types an error in parsing
2024-11-14 16:08:53 +00:00
bobsayshilol
b59647084b
Plug a memory leak
...
The call to |array_make()| always allocates and since this variable was
unused it lead to a leak. Simply plug it by removing it.
2024-10-27 22:02:34 +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
Feoramund
84700e09c9
Forbid parsing more fields if no separator was found
...
Fixes #4278
2024-09-20 19:02:00 -04:00
Karl Zylinski
29fedc1808
Changed some recently added //+ usages to #+ and also fixed some //+ usages in some code generators.
2024-09-17 19:39:48 +02:00
Karl Zylinski
093ade0504
Merge branch 'master' into file-tags-without-comments
2024-09-17 19:36:17 +02:00
gingerBill
19c1ed154c
Add -vet-packages:<comma-separated-string-array>
2024-09-17 11:01:26 +01:00
Karl Zylinski
c24e18bf10
Fix incorrect syntax error in parse_file
2024-09-14 14:36:33 +02:00
Karl Zylinski
8b84b9a4a2
Docs are generated as expected again.
2024-09-14 14:32:46 +02:00
Karl Zylinski
86e291235d
Merge remote-tracking branch 'origin/master' into file-tags-without-comments
2024-09-14 11:26:41 +02:00
Karl Zylinski
580f0599cd
parse_file: Removed some nesting and removed probable incorrect safety check.
2024-09-09 21:24:41 +02:00
Karl Zylinski
cc724ff5d2
Made error handling code in parse_file clearer.
2024-09-09 21:13:39 +02:00
Karl Zylinski
957cd64699
Rename process_file_tag -> parse_file_tag
2024-09-09 21:06:43 +02:00
Karl Zylinski
3637dcbd04
Simplified error messages in parse_build_tag, removed the idea of making multiple notted operating systems since it was misinformed.
2024-09-09 21:03:28 +02:00