aboutsummaryrefslogtreecommitdiff
path: root/src/checker.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge pull request #4069 from zen3ger/1738-aliased-procedure-resolutiongingerBill2024-08-131-0/+12
|\ | | | | Fix alias handling of procedures
| * Fix alias handling of proceduresRoland Kovacs2024-08-121-0/+12
| | | | | | | | | | | | | | | | | | An incorrect memmove when overriding entities caused multiple ones to point to the same procedure with incomplete variant data, resulting in later hiting a compiler assertion. Introduced delayed type checking for procedure aliases, as it was masked by the previous error in the override logic.
* | possibly fix init_core_type_info race conditionLaytan Laats2024-08-101-0/+3
|/
* Add `intrinsics.simd_masked_load` and `intrinsics.simd_masked_store`gingerBill2024-08-051-2/+2
|
* Revert changes to `in_single_threaded_checker_stage`gingerBill2024-07-151-16/+16
|
* Disable the need for mutexes in single threaded checker stagegingerBill2024-07-151-30/+19
|
* Remove use of mutex in single threaded codegingerBill2024-07-151-5/+14
|
* Keep MSVC happy with secure versions of C callsgingerBill2024-07-151-0/+4
|
* Use `gb_zero_*` callsgingerBill2024-07-151-3/+3
|
* Calculate size and alignment, and reuse memory for all variadic calls within ↵gingerBill2024-07-141-0/+2
| | | | a procedure body
* Mock out `#no_capture` for future usegingerBill2024-07-141-1/+1
|
* Add `#no_capture args: ..T` to reuse the backing array stack memorygingerBill2024-07-141-0/+1
|
* remove misleading `@(optimization_mode)` values and make "none" inhibit ↵Laytan Laats2024-07-081-6/+6
| | | | optimizations
* Add sort for global types and proceduresgingerBill2024-07-081-1/+1
|
* Allow `x :: y when cond else proc(...){...}`gingerBill2024-07-041-0/+12
|
* Ff `@(disabled=true)`, do not add that entity's dependencies to the setgingerBill2024-07-041-0/+4
|
* wasm: add foreign import and linking of wasm object filesLaytan Laats2024-07-021-2/+1
|
* Add `-custom-attribute`gingerBill2024-06-281-2/+3
|
* Fix #3803gingerBill2024-06-281-0/+1
|
* Remove `@(warning)` and `#warning(...)`gingerBill2024-06-251-14/+0
|
* Merge pull request #3137 from laytan/show-defineablegingerBill2024-06-201-0/+2
|\ | | | | Add flags to show/export defineable values and warn if a -define is unused in the project
| * -show-defineables and -export-defineablesLaytan Laats2024-06-061-0/+2
| |
* | Forbid private test casesFeoramund2024-06-181-0/+8
| |
* | Add `intrinsics.procedure_of`gingerBill2024-06-101-0/+4
| | | | | | | | | | | | | | | | ```odin foo :: proc(x: $T) { fmt.println(x) } bar :: intrinsics.procedure_of(foo(int(123))) // parameters are never ran at compile time, similar to `size_of` bar(333) // prints 333 ```
* | Use `get_final_microarchitecture()` for `ODIN_MICROARCH_STRING`Feoramund2024-06-101-1/+3
| |
* | Add compilation-related constantsFeoramund2024-06-101-0/+25
| | | | | | | | | | | | | | | | | | | | | | `ODIN_VERSION_HASH` is the `git` SHA hash of the commit the Odin compiler was built with. `ODIN_MICROARCH_STRING` is the string passed to `-microarch` when the program was built. `ODIN_OPTIMIZATION_MODE` is an enum value of which optimization mode was used to build the program.
* | Remove unnecessary Wait_Signal checksgingerBill2024-06-071-4/+0
| |
* | Try to fix a possible race condition with polymorphic record parametersgingerBill2024-06-061-0/+4
|/
* Add `@(rodata)`gingerBill2024-06-061-0/+6
|
* Remove `-test-name` in favor of test runner optionFeoramund2024-06-021-29/+0
| | | | | | `-define:ODIN_TEST_NAMES=...` is capable of selecting test by package and name or name only, with the ability to access packages included by `-all-packages`.
* Add experimental target `orca_wasm32`gingerBill2024-05-301-0/+1
|
* Add `@(link_suffix=<string>)`gingerBill2024-05-301-0/+46
|
* Delay checking foreign import paths until after global scope is checkedgingerBill2024-05-281-80/+88
|
* Begin moving `foreign import` import paths to be evaluated in the semantic ↵gingerBill2024-05-271-1/+38
| | | | phase rather than parsing.
* Merge pull request #3570 from jasonKercher/linux-arm32gingerBill2024-05-201-0/+4
|\ | | | | Get the compiler to build and work on arm32 Linux
| * arm32 now compiles and runs demojasonkercher2024-05-101-0/+4
| |
* | Reimplement `-build-mode:static`/`-build-mode:lib`gingerBill2024-05-161-0/+1
| |
* | Merged with masterAndreas T Jonsson2024-05-021-10/+21
|\|
| * Allow `@(init)` procs to be `@(disabled)`Feoramund2024-04-281-0/+5
| |
| * Add extra assertsgingerBill2024-04-281-0/+2
| |
| * Correct map usagegingerBill2024-04-261-1/+1
| |
| * Implement dumb `PtrMap`gingerBill2024-04-261-3/+2
| |
| * Implement dumb `StringMap`gingerBill2024-04-261-4/+3
| |
| * Minor clean upgingerBill2024-04-261-6/+10
| |
| * Minor changesgingerBill2024-04-261-0/+2
| |
* | Merge branch 'master' into netbsdAndreas T Jonsson2024-04-251-4/+9
|\|
| * Add `-no-type-assert` and `ODIN_NO_TYPE_ASSERT`gingerBill2024-04-181-0/+1
| |
| * Add `ODIN_NO_BOUNDS_CHECK`gingerBill2024-04-181-0/+1
| |
| * Remove `?`dev-2024-04agingerBill2024-04-111-1/+1
| |
| * Add @(static) checkgingerBill2024-04-111-2/+2
| |