Commit Graph

4513 Commits

Author SHA1 Message Date
gingerBill
2416380f34 Enforce as global constant 2024-04-18 12:56:18 +01:00
gingerBill
5200e3fe7a Set __$ti- stuff to be private linkage 2024-04-18 12:45:20 +01:00
gingerBill
b72d49ceb5 Set linkage to private for __$type_info_data 2024-04-18 12:41:05 +01:00
gingerBill
689982a38d Force runtime type table to be in rodata/rdata section 2024-04-18 12:22:41 +01:00
gingerBill
f84a092977 Fix typo. 2024-04-18 11:28:46 +01:00
gingerBill
aad41fc762 Fix #3445 2024-04-18 11:27:42 +01:00
gingerBill
ece78d22d2 Add -no-type-assert and ODIN_NO_TYPE_ASSERT 2024-04-18 11:22:31 +01:00
gingerBill
5c52f3cf2f Add ODIN_NO_BOUNDS_CHECK 2024-04-18 11:13:44 +01:00
gingerBill
7cd2bc26f4 Clear error message on collisions with using on struct fields 2024-04-17 13:31:32 +01:00
gingerBill
a61ae7c861 Fix #3427 2024-04-16 13:31:49 +01:00
gingerBill
8a0f9ae108 Print to string buffer before printing errors 2024-04-16 13:15:23 +01:00
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