| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Change allocator to permanent | gingerBill | 2024-04-08 | 1 | -2/+2 |
| | | |||||
| * | Obfuscate `#line` | gingerBill | 2024-04-08 | 3 | -10/+15 |
| | | |||||
| * | Obfuscate `#file` and `#procedure` when `-obfuscate-source-code-locations` ↵ | gingerBill | 2024-04-08 | 3 | -15/+25 |
| | | | | | is enabled | ||||
| * | Add `"type"` field to `-json-errors` | gingerBill | 2024-04-08 | 1 | -0/+8 |
| | | |||||
| * | Merge pull request #3394 from laytan/wasm-fixes | gingerBill | 2024-04-08 | 1 | -0/+4 |
| |\ | | | | | Wasm fixes | ||||
| | * | enable the required target feature `atomics` when using them in wasm | Laytan Laats | 2024-04-08 | 1 | -0/+4 |
| | | | |||||
| * | | Fix printing error when field name could not be found | gingerBill | 2024-04-08 | 1 | -1/+2 |
| | | | |||||
| * | | Improve error messages for people using keywords instead of identifiers | gingerBill | 2024-04-08 | 1 | -1/+9 |
| |/ | |||||
| * | Merge pull request #3389 from laytan/fix-wasm-atomics | gingerBill | 2024-04-06 | 1 | -10/+5 |
| |\ | | | | | fix wasm atomics | ||||
| | * | fix wasm atomics | Laytan Laats | 2024-04-06 | 1 | -10/+5 |
| | | | | | | | | | Fixes #2745 | ||||
| * | | Fix checker crash when `or_return`/`or_break`/`or_continue` used for ↵ | oskarnp | 2024-04-06 | 1 | -3/+3 |
| |/ | | | | non-existing proc | ||||
| * | fix amd64 sysv abi to pass asan everywhere | Laytan Laats | 2024-04-04 | 1 | -32/+15 |
| | | | | | | | | | | | | | | | | 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 | ||||
| * | Merge pull request #3372 from laytan/fix-lbarg-ignore-logic | gingerBill | 2024-04-04 | 2 | -2/+6 |
| |\ | | | | | fix lbArg_Ignore logic | ||||
| | * | fix lbArg_Ignore logic | Laytan Laats | 2024-04-04 | 2 | -2/+6 |
| | | | | | | | | | Fixes #2698 | ||||
| * | | Merge pull request #3374 from laytan/fix-128-ints-alignment-arm64 | gingerBill | 2024-04-04 | 2 | -2/+2 |
| |\ \ | | | | | | | fix 128 bit int alignment on arm64 | ||||
| | * | | fix 128 bit int alignment on arm64 | Laytan Laats | 2024-04-04 | 2 | -2/+2 |
| | |/ | | | | | | | Fixes #2403 | ||||
| * | | Add better error messages with suggestions for using `context` as an identifier | gingerBill | 2024-04-04 | 1 | -0/+14 |
| | | | |||||
| * | | Improve error messages for `A variable declaration must be an identifier` | gingerBill | 2024-04-04 | 1 | -5/+22 |
| | | | |||||
| * | | Remove consecutive linking libraries | gingerBill | 2024-04-04 | 1 | -1/+13 |
| | | | |||||
| * | | Default to "smart" linker behaviour; Add `-min-link-libs` to use minimize ↵ | gingerBill | 2024-04-04 | 3 | -34/+43 |
| | | | | | | | | | link libs if wanted | ||||
| * | | Merge pull request #3370 from laytan/fix-objc-proc-group-edge-case | gingerBill | 2024-04-04 | 2 | -3/+5 |
| |\ \ | |/ |/| | fix objc proc group edge case | ||||
| | * | fix objc proc group edge case | Laytan Laats | 2024-04-03 | 2 | -3/+5 |
| | | | | | | | | | Fixes #2648 | ||||
| * | | Merge pull request #3366 from laytan/fix-vet-scope-bug | gingerBill | 2024-04-03 | 1 | -1/+1 |
| |\ \ | | | | | | | fix vet scope bug skipping some scopes | ||||
| | * | | fix vet scope bug skipping some scopes | Laytan Laats | 2024-04-02 | 1 | -1/+1 |
| | | | | | | | | | | | | | Fixes #3146 | ||||
| * | | | fix -vet warning for stack overflows not showing up | Laytan Laats | 2024-04-03 | 1 | -11/+9 |
| | |/ |/| | | | | | | | Due to the placement of this code, the warning would only ever be added if the variable was also either unused or shadowed. | ||||
| * | | Clarity warning and error printing | gingerBill | 2024-04-02 | 2 | -6/+14 |
| | | | |||||
| * | | Fix printing of warnings | gingerBill | 2024-04-02 | 1 | -1/+2 |
| | | | |||||
| * | | Merge pull request #3363 from laytan/fix-c-varargs-named-args | gingerBill | 2024-04-02 | 1 | -0/+27 |
| |\ \ | | | | | | | fix named arguments and untyped nil with #c_vararg | ||||
| | * | | fix untyped nil into c varargs | Laytan Laats | 2024-04-02 | 1 | -0/+6 |
| | | | | | | | | | | | | | Fixes #2842 | ||||
| | * | | fix named arguments with #c_vararg | Laytan Laats | 2024-04-02 | 1 | -0/+21 |
| | |/ | | | | | | | | | | | | | | | | | Previously `args=1`, `args={}`, `args={1, 2, 3}` would all crash the compiler. Now it passes them correctly, and if given a compound literal, the values are expanded into the call so you can use a named arg while passing multiple values. Fixes #3168 | ||||
| * | | Merge pull request #3360 from laytan/debug-info-fixes | Jeroen van Rijn | 2024-04-01 | 1 | -2/+2 |
| |\ \ | | | | | | | fix wrong type in map debug info | ||||
| | * | | change unneeded permanent allocation to temporary | Laytan Laats | 2024-04-01 | 1 | -1/+1 |
| | | | | |||||
| | * | | fix wrong type in map debug info | Laytan Laats | 2024-04-01 | 1 | -1/+1 |
| | | | | |||||
| * | | | Merge pull request #3358 from laytan/debug-info-fixes | gingerBill | 2024-04-01 | 4 | -489/+446 |
| |\| | | |/ |/| | debug info fixes/refactor | ||||
| | * | remove soa handling in debug info, fields are already added in checker | Laytan Laats | 2024-04-01 | 1 | -50/+1 |
| | | | |||||
| | * | debug info fixes/refactor | Laytan Laats | 2024-04-01 | 4 | -489/+495 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes (on my end) #3340, #3117, #2945, #2922, and #2762 A general refactor of debug info generation in order to fix issues and increase stability. What I believe is the root cause of a bunch of issues is that we use the temporary metadata/forward declarations too much (/ hold onto them for too long). It seems to cause problems with the reference counting inside LLVM. This PR reduces the use of these forward declarations to a minimum, it creates it, fills in the fields, and resolves it, instead of waiting until the end of generating code. Some smaller issues I came across have also been solved. | ||||
| * | | Fix nested `ERROR_BLOCK` bug | gingerBill | 2024-04-01 | 1 | -5/+13 |
| | | | |||||
| * | | Fix type checking for invalid enum backing type | gingerBill | 2024-04-01 | 2 | -6/+4 |
| | | | |||||
| * | | Error message when RTTI is disabled when iterating over an `enum` type or a ↵ | gingerBill | 2024-04-01 | 1 | -0/+6 |
| | | | | | | | | | `bit_set` of `enum` with `for in` | ||||
| * | | Unify error message logic for ranges over `bit_set` | gingerBill | 2024-04-01 | 1 | -9/+5 |
| | | | |||||
| * | | Support `for in` with `bit_set` | gingerBill | 2024-04-01 | 3 | -57/+152 |
| | | | |||||
| * | | Fix error message | gingerBill | 2024-04-01 | 1 | -2/+2 |
| |/ | |||||
| * | Enforce error on old style for/switch l-value | gingerBill | 2024-03-30 | 1 | -4/+0 |
| | | |||||
| * | Fix debug info for `map` | gingerBill | 2024-03-30 | 1 | -4/+0 |
| | | |||||
| * | Fix `#field_align` issues, by simplifying the LLVM struct type generation | gingerBill | 2024-03-30 | 1 | -9/+8 |
| | | |||||
| * | Try storing a pointer to a fake metadata type in the debug info for a `map` | gingerBill | 2024-03-30 | 2 | -8/+6 |
| | | |||||
| * | Merge pull request #3348 from rick-masters/fix_convert_smaller_float_endian | gingerBill | 2024-03-29 | 1 | -3/+15 |
| |\ | | | | | Implement endian conversions for smaller float types. | ||||
| | * | Implement endian conversions for smaller float types. | rick-masters | 2024-03-29 | 1 | -3/+15 |
| | | | |||||
| * | | Merge pull request #3350 from laytan/fix-gb.h-for-fsanitize-address | gingerBill | 2024-03-29 | 1 | -4/+9 |
| |\ \ | | | | | | | fix gb.h to be able to use -fsanitize=address | ||||
| | * | | fix gb.h to be able to use -fsanitize=address | Laytan Laats | 2024-03-29 | 1 | -4/+9 |
| | | | | |||||