Commit Graph

4502 Commits

Author SHA1 Message Date
gingerBill
36644a3c09 Add template specialization for compared against "" with String internally 2024-04-15 12:43:45 +01:00
gingerBill
7e582dd671 Add basic suggestion to missing package name 2024-04-15 12:43:27 +01:00
gingerBill
2e29687cee Fix #3425 2024-04-15 10:28:14 +01:00
Laytan Laats
9f97056c14 add 'odin root' command 2024-04-13 20:08:57 +02:00
gingerBill
5726b7d954 Remove warning on clang 2024-04-12 14:51:22 +01:00
gingerBill
4240e0025e Improve scalar -> array assignment when the scalar is constant in LLVM 2024-04-12 14:20:46 +01:00
gingerBill
caa344c88d Simplify scalar -> array conversions in LLVM to use a loop after a certain size 2024-04-12 14:05:36 +01:00
gingerBill
46b9bd8c0e Improve error messages for switch and for r-values with a suggestion 2024-04-12 13:35:14 +01:00
gingerBill
3426af2d6c Fix #3415 2024-04-12 12:33:25 +01:00
gingerBill
efc3f9916e Fix #3414 2024-04-12 12:30:16 +01:00
gingerBill
cb0a57eaa9 Add -target:freestanding_amd64_win64 2024-04-11 17:18:51 +01:00
gingerBill
aab122ede8 Remove ? 2024-04-11 15:59:22 +01:00
gingerBill
503964c769 Add @(static) check 2024-04-11 15:57:13 +01:00
gingerBill
b2e887be36 Change stack overflow check to >256 KiB 2024-04-11 15:55:01 +01:00
gingerBill
f36fb6d1ef Add nil checks 2024-04-11 15:41:01 +01:00
gingerBill
45d7a670ce Fix @(static) error message bug 2024-04-11 15:34:34 +01:00
gingerBill
b6d2ac11b8 Add -vet-unused-variables and `-vet-unused-imports (-vet-unused is both) 2024-04-11 15:24:36 +01:00
gingerBill
0abbf3ba0a Fix #3412 2024-04-11 13:57:37 +01:00
gingerBill
13e459980b Fix ptr_to_bit_field.field 2024-04-10 16:18:44 +01:00
gingerBill
97e2d8916a Merge branch 'master' of https://github.com/odin-lang/Odin 2024-04-10 12:32:32 +01:00
gingerBill
3dfd61dd4f Make intrinsics.overflow_* NOT #optional_ok 2024-04-10 12:32:26 +01:00
Chris
219eb58c08 Fix typo in using parameter error message 2024-04-09 12:03:41 +01:00
Laytan Laats
9c958ee66d fix nasm check 2024-04-08 20:43:52 +02:00
gingerBill
ecac3aef32 Change allocator to permanent 2024-04-08 16:18:14 +01:00
gingerBill
ec45504631 Obfuscate #line 2024-04-08 16:14:47 +01:00
gingerBill
810cf22e5d Obfuscate #file and #procedure when -obfuscate-source-code-locations is enabled 2024-04-08 16:08:35 +01:00
gingerBill
16dc79fc5c Add "type" field to -json-errors 2024-04-08 13:36:23 +01:00
gingerBill
2aca370a0a Merge pull request #3394 from laytan/wasm-fixes
Wasm fixes
2024-04-08 13:33:29 +01:00
Laytan Laats
ce196529dc enable the required target feature atomics when using them in wasm 2024-04-08 13:56:04 +02:00
gingerBill
114ddc4a10 Fix printing error when field name could not be found 2024-04-08 12:06:06 +01:00
gingerBill
0df9c8bffc Improve error messages for people using keywords instead of identifiers 2024-04-08 12:04:33 +01:00
gingerBill
352d526b94 Merge pull request #3389 from laytan/fix-wasm-atomics
fix wasm atomics
2024-04-06 22:51:58 +01:00
Laytan Laats
b150f49c46 fix wasm atomics
Fixes #2745
2024-04-06 23:32:38 +02:00
oskarnp
ca46484ae3 Fix checker crash when or_return/or_break/or_continue used for non-existing proc 2024-04-06 11:02:43 +02:00
Laytan Laats
133b45d843 fix amd64 sysv abi to pass asan everywhere
I verified the PR by running the entire test suite of Odin itself with
`-sanitize:address` and also the ols test suite (which caused unique problems
before).

A test has also been added with some problematic code, Windows seems to
have problems with asan in CI or in general so it is not ran there.

The LB_ABI_COMPUTE_RETURN_TYPES block has been removed entirely because
it was unused, I got pretty confused why it didn't effect anything at
first.

Fixes #3211
2024-04-04 23:45:23 +02:00
gingerBill
fbff2b4fd6 Merge pull request #3372 from laytan/fix-lbarg-ignore-logic
fix lbArg_Ignore logic
2024-04-04 18:09:12 +01:00
gingerBill
7f0ca315b3 Merge pull request #3374 from laytan/fix-128-ints-alignment-arm64
fix 128 bit int alignment on arm64
2024-04-04 18:06:01 +01:00
Laytan Laats
31407d9b1b fix 128 bit int alignment on arm64
Fixes #2403
2024-04-04 18:39:41 +02:00
gingerBill
83e2f5ff74 Add better error messages with suggestions for using context as an identifier 2024-04-04 17:01:31 +01:00
gingerBill
2375ac22a7 Improve error messages for A variable declaration must be an identifier 2024-04-04 16:57:08 +01:00
gingerBill
b979fd4c43 Remove consecutive linking libraries 2024-04-04 16:14:05 +01:00
gingerBill
0e5a482c42 Default to "smart" linker behaviour; Add -min-link-libs to use minimize link libs if wanted 2024-04-04 16:11:26 +01:00
Laytan Laats
a7056f2b4f fix lbArg_Ignore logic
Fixes #2698
2024-04-04 16:58:22 +02:00
gingerBill
99aff7e3fb Merge pull request #3370 from laytan/fix-objc-proc-group-edge-case
fix objc proc group edge case
2024-04-04 13:03:27 +01:00
Laytan Laats
5339e1e1b6 fix objc proc group edge case
Fixes #2648
2024-04-03 21:21:46 +02:00
gingerBill
e42b16b106 Merge pull request #3366 from laytan/fix-vet-scope-bug
fix vet scope bug skipping some scopes
2024-04-03 11:40:01 +01:00
Laytan Laats
b754c1e072 fix -vet warning for stack overflows not showing up
Due to the placement of this code, the warning would only ever be added
if the variable was also either unused or shadowed.
2024-04-03 01:05:54 +02:00
gingerBill
a9bfb3ac2e Clarity warning and error printing 2024-04-02 23:39:14 +01:00
gingerBill
692a47f080 Fix printing of warnings 2024-04-02 23:36:36 +01:00
Laytan Laats
21fcf7c874 fix vet scope bug skipping some scopes
Fixes #3146
2024-04-02 23:59:38 +02:00