aboutsummaryrefslogtreecommitdiff
path: root/src/checker.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix #5967 (Incorrect stack overflow warning for by ref switches over unions)Franz2025-11-281-1/+3
|
* skip collision panic when package names aren't uniqueLaytan2025-11-161-3/+9
|
* For test runner, try to look for `os.exit` or `os2.exit`gingerBill2025-10-301-0/+16
|
* Fix #5785Jeroen van Rijn2025-10-111-13/+9
|
* Fix Objective-C block symbols naming conflict across modules.Harold Brenes2025-10-051-1/+4
| | | | | Fix assert triggered when there's checker errors and Objective-C method implementations.
* Include objc runtime type dependencies only on darwinHarold Brenes2025-09-291-2/+4
|
* Automatically emit objc_msgSend calls when calling imported or implemented ↵Harold Brenes2025-09-291-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | Objective-C methods - Add intrinsics.objc_super() - Emit objc_msgSendSuper2 calls when an objc method call is combined with objc_super(self) - Fix objc_block return value ABI for large struct returns - Fix objc_implement method wrappers bad ABI for large struct returns and indirect args - Simplify parameter forwarding for objc_imlpement methods - Add intrinsics.objc_instancetype to mimi Objective-C instancetype* returns This facilitates returning the correct type on subclasses when calling mehtods such as `alloc`, `init`, `retain`, etc. - Refactor Objective-C class implementations generation so that hierarchies are properly initialized - Better codegen for context passing with ivar-based autocontext - Allow @superclass on imported objc-c objects - Better codegen for block forwarding invoker, arguments are forwarded directly
* `Entity *` to `std::atomic<Entity *>` to remove the need for a PtrMap+MutexgingerBill2025-09-191-1/+1
|
* Minimize mutex usage when in single threaded mode.gingerBill2025-09-101-14/+25
|
* Remove global `PtrMap<Type *, GenTypesData *>` and store on the `TypeNamed` ↵gingerBill2025-09-101-5/+0
| | | | directly
* Removal of some old checksgingerBill2025-09-101-35/+48
|
* Use macro instead of a C++ iterator - for speedgingerBill2025-09-101-22/+14
| | | | C++ iterators are bad.
* Inline some ptr set iteratorsgingerBill2025-09-101-4/+13
|
* Move more from `heap_allocator()` to `temporary_allocator()`gingerBill2025-09-101-32/+29
|
* Multithread "check all scope usages"gingerBill2025-09-101-10/+33
|
* Minimize more thread contentiongingerBill2025-09-101-27/+31
|
* Minor clean up of permanent/temporary arena usagegingerBill2025-09-101-3/+3
|
* Use arena in `calculate_global_init_order`gingerBill2025-09-101-53/+79
|
* Multithread min dep set by removing the set itselfgingerBill2025-09-101-94/+99
|
* Multithread some of the min dep systemgingerBill2025-09-101-15/+96
|
* Split type and inline cycles into separate loopsgingerBill2025-09-101-15/+26
|
* Multithread `check_update_dependency_tree_for_procedures`gingerBill2025-09-101-0/+39
|
* formattingsmoke-y2025-09-051-1/+3
|
* fix empty parentheses seg faultsmoke-y2025-09-051-0/+1
|
* Fix parentheses for raddbg expressiongingerBill2025-08-221-4/+4
|
* Remove debug printgingerBill2025-08-221-2/+0
|
* Improve the raddbg type views generated from `fmt`-based struct field tagsgingerBill2025-08-221-146/+269
|
* Add `@(raddbg_type_view=<optional-string>)`gingerBill2025-08-211-0/+170
| | | | | If no string parameter is provided, then one will be generated from the struct field tags. The attribute must be applied if the automatic struct field tag approach is to be used.
* Allow `#+feature global-context` for `@(init)` and `@(fini)` procedures as ↵gingerBill2025-08-121-4/+34
| | | | an interim measure
* Require `@(init)` and `@(fini)` to be `proc "contextless" ()`gingerBill2025-08-081-0/+9
|
* Implementes the block ABI.2010.3.16 natively via the `objc_block` intrinsic ↵Harold Brenes2025-08-061-0/+4
| | | | | | and the `Objc_Block` builtin type. See: https://clang.llvm.org/docs/Block-ABI-Apple.html
* Change `is_utf16` field to `encoding` and use an enumgingerBill2025-08-051-0/+3
|
* Merge branch 'master' into bill/utf16-stringsgingerBill2025-08-051-1/+5
|\
| * Fix possible race condition with struct offsetsgingerBill2025-08-051-1/+5
| |
* | Add `string16` and `cstring16` (UTF-16 based strings)gingerBill2025-08-021-7/+9
|/
* 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