aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Fix #3319gingerBill2024-03-241-0/+18
| | | |
* | | | Fix #3320gingerBill2024-03-241-9/+10
| | | |
* | | | Improve error messages for some wrong constant value attributesgingerBill2024-03-241-0/+9
| | | |
* | | | Merge pull request #3316 from ↵gingerBill2024-03-243-17/+24
|\ \ \ \ | |/ / / |/| | | | | | | | | | | laytan/fix-ld-warnings-and-set-default-minimum-version darwin: fix ld warnings and set minimum os version
| * | | darwin: fix ld warnings and set minimum os versionLaytan Laats2024-03-233-17/+24
| | | |
* | | | darwin: arm64 abi fixesLaytan Laats2024-03-231-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit b4fe9677a1f69acde12e7cf296269f0c4d98362f some core tests segfault during build, upon investigation it is because some arg types were of size 0 and you can't have a 0 sized int. It also applies the earlier fix for parameters to the return types, this fixes #3223 Thought I would put this PR up, but I am in no way an expert in abi so feel free to close for a better fix if there is one. I am able to run the entire core test suite with `-sanitize:address` with these changes.
* | | | Add error block around `error_line` callsgingerBill2024-03-236-4/+28
| | | |
* | | | Improve error suggestion and propagation for `x->y`gingerBill2024-03-231-3/+11
| | | |
* | | | Improve error propagation for `(*x).y` style errors from C-programmersgingerBill2024-03-231-0/+2
| | | |
* | | | Treat `*x` as an unary operator to improve error messages for common ↵gingerBill2024-03-233-2/+34
| | | | | | | | | | | | | | | | C-programmer mistakes
* | | | Fix #3314gingerBill2024-03-231-5/+7
| | | |
* | | | Ignore wrong typesgingerBill2024-03-231-1/+1
| | | |
* | | | Add some basic escape analysis errors for `return &x`gingerBill2024-03-233-51/+68
| | | |
* | | | Add missing field flags in debug printinggingerBill2024-03-231-0/+12
|/ / /
* | | Merge branch 'master' of https://github.com/odin-lang/OdingingerBill2024-03-211-0/+2
|\ \ \
| * \ \ Merge pull request #3304 from mailgerigk/mastergingerBill2024-03-211-0/+2
| |\ \ \ | | | | | | | | | | Remove entry point when compiled with no-entry-point as shared library
| | * \ \ Merge branch 'odin-lang:master' into mastermailgerigk2024-03-211-0/+2
| | |\ \ \
| | * | | | Remove entry point when compiled with no-entry-point as shared librarygerigk2024-03-201-0/+2
| | | | | |
* | | | | | Fix at error printing buggingerBill2024-03-211-1/+4
|/ / / / /
* | | | | Fix #3305gingerBill2024-03-211-1/+1
| | | | |
* | | | | Disallow `for x in y.(T)` and `for x in y.?`gingerBill2024-03-211-4/+7
| | | | |
* | | | | Fix missing `ERROR_BLOCK();` callsgingerBill2024-03-211-0/+4
| | | | |
* | | | | Update doc-format for `#by_ptr` and `#no_broadcast` parametersgingerBill2024-03-213-14/+17
| | | | |
* | | | | Minor clean up of `#no_broadcast` handlinggingerBill2024-03-211-5/+4
| | | | |
* | | | | Add `#no_broadcast` procedure parameter to disallow automatic array ↵gingerBill2024-03-215-38/+75
| |/ / / |/| | | | | | | | | | | programming broadcasting on procedure arguments
* | | | Fix error handling for type switch statementgingerBill2024-03-201-0/+2
|/ / /
* | | Fix error messagegingerBill2024-03-201-1/+1
| | |
* | | Fix #3299gingerBill2024-03-201-0/+13
| | |
* | | Fix #3301gingerBill2024-03-201-0/+2
| | |
* | | Try doing `<{i64, i32}>` instead of `[i64, i64]` for ARM64 12-byte parametersgingerBill2024-03-201-1/+15
| | |
* | | Merge branch 'master' of https://github.com/odin-lang/OdingingerBill2024-03-201-0/+1
|\ \ \
| * | | darwin: allow cross linking darwin_amd64 from darwin_arm64Laytan Laats2024-03-201-0/+1
| | | |
* | | | Force packed structs in ABI parametersgingerBill2024-03-201-2/+2
|/ / /
* | | Change ARM64 ABI for integer-like parametersgingerBill2024-03-201-8/+2
| | |
* | | Fix #3133 by show the line of the syntax errorgingerBill2024-03-201-1/+1
| | |
* | | Add suggestion for `x: ^T; y = x` to be `x^`gingerBill2024-03-201-0/+5
| | |
* | | Add `x: T; y: ^T = x` suggestion to do `&x`gingerBill2024-03-201-0/+6
| | |
* | | Update ARM64 ABI return typegingerBill2024-03-201-8/+3
| | |
* | | Add `offset` (in bytes) field to `-json-errors`gingerBill2024-03-201-0/+1
| | |
* | | Fix bounds checkinggingerBill2024-03-201-1/+4
| | |
* | | `m[i]` on `#row_major` matrices will reduce the i-th row-vectorgingerBill2024-03-201-1/+7
| | |
* | | Merge pull request #3297 from laytan/linker-improvementsgingerBill2024-03-202-5/+36
|\ \ \ | | | | | | | | linker improvements
| * | | linker improvementsLaytan Laats2024-03-192-5/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `path_to_fullpath` did different things on Windows&Unix, an attempt to bring them closer together was made here. This was prompted by the compiler completely ignoring `foreign import "foo.dylib"` when `foo.dylib` does not exist (because `path_to_fullpath` returns an empty string). Causing just unresolved symbol errors, when on Windows it would pass along the path to the linker and actually say it doesn't exist, which is now also the case for Unix. This also fixes some checker errors that relied on the Windows behaviour, for example: `Error: File name, , cannot be as a library name as it is not a valid identifier`. Made `-no-crt` require either `-default-to-nil-allocator` or `-default-to-panic-allocator` on Unix, the current default allocators rely on libc and this was not obvious and would immediately bring up unresolved symbol errors for the linked memory management functions, or just link with libc anyways because it was foreign imported. Added a suggestion to install `nasm` with the user's package manager when assembling using `nasm` fails on Unix, I saw some confusion about it in the Discord. Ignore explicit foreign imports of libc. It is already linked in later on in the linking process and would otherwise (at least on macOS) cause linker warnings for duplicate libraries. This also makes it so when using `-no-crt` and importing something that requires libc, linker errors are given (like I would expect), instead of silently still linking with libc because it was foreign imported.
* | | | update macOS releases for `core:sys/info` and `odin report`Laytan Laats2024-03-201-0/+5
| | | |
* | | | Correct matrix builtins for `#row_major`gingerBill2024-03-193-5/+12
| | | |
* | | | Add `#row_major matrix[R, C]T`gingerBill2024-03-199-28/+87
| | | | | | | | | | | | | | | | | | | | As well as `#column_major matrix[R, C]T` as an alias for just `matrix[R, C]T`. This is because some libraries require a row_major internal layout but still want to be used with row or major oriented vectors.
* | | | Replace `gb_exit(1)` with `exit_with_errors()` where appropriategingerBill2024-03-196-13/+17
| | | |
* | | | Add `-json-errors`gingerBill2024-03-193-15/+110
| | | |
* | | | General clean-up for error.cppgingerBill2024-03-191-22/+31
| | | |
* | | | Serialize errors to make them sortable, deterministic, and generally more ↵gingerBill2024-03-1912-93/+158
| | | | | | | | | | | | | | | | control