aboutsummaryrefslogtreecommitdiff
path: root/src/checker.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix possible race condition with struct offsetsgingerBill2025-08-051-1/+5
|
* fix checkLaytan2025-08-011-1/+1
|
* Rename `iOS` subtarget to `iPhone` for consistency.Harold Brenes2025-07-141-1/+1
| | | | | Add `ODIN_PLATFORM_SUBTARGET_IOS` builtin constant which evaluated to `true` when the platform is `Darwin` and the subtarget it either `iPhone` or `iPhoneSimulator`
* Updated iOS/iPhoneSimulator build supportHarold Brenes2025-07-131-3/+4
|
* Merge pull request #5286 from Feoramund/no-san-memgingerBill2025-06-091-0/+6
|\ | | | | Add `@(no_sanitize_memory)` with additions to `base:sanitizer`
| * Add `@(no_sanitize_memory)` proc attribute with MSan additions to ↵Feoramund2025-06-051-0/+6
| | | | | | | | `base:sanitizer`
* | Guard against untyped `nil` in type cycle and type info sectionsFeoramund2025-06-081-2/+2
| | | | | | | | Fixes #5299
* | Add `nullptr` check in `add_type_info_type_internal`Feoramund2025-06-061-1/+1
|/ | | | Fixes #5215
* Add comments to `builtin.odin`, documenting ODIN_* constants. (#5218)Jeroen van Rijn2025-05-261-6/+25
| | | And document constants not previously listed.
* Do not call disabled deferred proceduresFeoramund2025-05-191-0/+6
|
* @(init), @(fini) and @(export) procedures are classified as used.Jeroen van Rijn2025-05-171-2/+7
| | | | For the purposes of `-vet-unused-procedures`, exported procedures and `@(init)` and `@(fini)` are now disregarded.
* Merge pull request #5064 from harold-b/hb/objc-classesgingerBill2025-05-081-0/+122
|\ | | | | Add support for Objective-C class implementation
| * Move unconditionally exporting Objective-C methods to the right locationHarold Brenes2025-05-031-17/+0
| |
| * Fix checker errors.Harold Brenes2025-05-031-1/+1
| |
| * Prevent multiple uses of the same Objective-C class nameHarold Brenes2025-05-031-0/+1
| |
| * Implement all checker specification for Objective-C class implementations ↵Harold Brenes2025-05-031-29/+30
| | | | | | | | and `objc_ivar_get` intrinsic
| * Fix more styling and minor issuesHarold Brenes2025-04-271-1/+1
| |
| * Fix indentationsHarold Brenes2025-04-271-75/+75
| | | | | | | | Fix Objective-C wrapper procs not forwarding return value
| * Add support for Objective-C method implementation with Odin calling convention.Harold Brenes2025-04-231-0/+64
| | | | | | | | Use @objc_context_provider to provide a context for a type.
| * Add initial support for Objective-C class implementationHarold Brenes2025-04-201-2/+75
| |
* | Add attribute @(no_sanitize_address)Lucas Perlind2025-05-011-0/+6
| | | | | | | | | | | | | | | | | | | | | | The purposes of this attribute is to let procedures opt-out of being instrumented with asan. Typically an allocator that includes 'in-band' meta-data will be accessing poisoned values (such as tlsf). Making asan work with these allocators becomes very challenging so just being to ignore asan within specific allocator procedures makes it easier to reason and removes the need to temporarily poison and unpoison allocator data.
* | Warn if someone imports the same case-folded path twiceJeroen van Rijn2025-04-271-0/+13
|/
* Remove warning on struct field parameters being too big for the stackgingerBill2025-04-091-1/+1
|
* Very very rudimentary support for `-target:linux_arm64 -subtarget:android`gingerBill2025-03-261-0/+1
|
* Fix #4914gingerBill2025-03-061-0/+8
|
* Move temporary array out of `CheckerInfo`gingerBill2025-02-221-14/+16
|
* Change `typeid` definition to be based around the canonical type hashgingerBill2025-02-201-16/+29
| | | | | | | | `typeid` used to be a fancy index with extra metadata stored on it. Now it is direct hash of the type. This is safe to do in practice since any possible collisions are checked at compile time AND the chances of having a 1% collision are around 1 in 600K (see the Birthday Paradox). Therefore accessing a `^Type_Info` is now a hash table lookup with linear probing. The table is twice the size than necessary so prevent too much probing due to an overly dense hash table.
* Use `PtrMap` temporarilygingerBill2025-02-201-3/+3
|
* Number fields within procedures with a depth-first numbering systemgingerBill2025-02-191-0/+4
|
* Use `TypeSet` for DeclInfo depsgingerBill2025-02-181-5/+5
|
* Minor code clean upgingerBill2025-02-181-47/+15
|
* Fix typosgingerBill2025-02-181-1/+1
|
* Simplify type info table constructiongingerBill2025-02-171-61/+101
|
* Begin work on `TypeSet`gingerBill2025-02-171-15/+6
|
* Begin work on hash typesgingerBill2025-02-171-2/+42
|
* Work on making name mangling deterministicgingerBill2025-02-171-0/+1
|
* Fix #4763gingerBill2025-01-311-0/+4
|
* Add `@(export) foreign import`gingerBill2025-01-311-3/+13
|
* Add `@(ignore_duplicates)` for `foreign import` declarationsgingerBill2025-01-281-0/+9
|
* Do not warn about stack overflow in range loops 'by reference'flysand72025-01-161-3/+9
|
* Make `-no-dynamic-literals` the default nowgingerBill2025-01-051-1/+17
|
* Support multiple paths for wasm in `foreign import`gingerBill2025-01-011-0/+34
|
* Remove `#relative` types from the compilergingerBill2024-11-141-24/+0
|
* Ignore `package runtime` with using `-vet-unused-packages`gingerBill2024-10-021-0/+3
|
* print proc types in same order as procsBeau McCartney2024-09-291-3/+3
|
* fix deferred procedure errorsBeau McCartney2024-09-291-5/+5
|
* Add `-vet-unused-procedures`gingerBill2024-09-171-7/+48
|
* Add `-vet-packages:<comma-separated-string-array>`gingerBill2024-09-171-12/+4
|
* remove commaLaytan Laats2024-08-311-1/+1
|
* fix some issues with the "bad import name" errorsLaytan Laats2024-08-311-3/+9
| | | | | | | | | | There was so much wrong here: - The `if` statement was never entered because even on invalid import names `path_to_entity_name` returns "_" - Two errors were shown where one doesn't make sense, need to choose one based on context - Structure of the messages were different from other error messages - Suggestion was using the wrong import path