16043 Commits

Author SHA1 Message Date
gingerBill ea7e9bc11c Merge pull request #5732 from harold-b/hb.preempt-field-check-sig-similar-enough
Preempt field checking on `signature_parameter_similar_enough` with a type ptr equality check
2025-09-30 17:51:23 +01:00
Harold Brenes a769e341cb Preempt field checking on signature_parameter_similar_enough with a type ptr equality check 2025-09-30 11:50:30 -04:00
gingerBill 4945168e6d Short circuit for #raw_union in signature_parameter_similar_enough 2025-09-30 10:48:05 +01:00
gingerBill 668df4a571 Improve signature_parameter_similar_enough for structs 2025-09-30 10:47:31 +01:00
gingerBill 748b4cdc6b Merge pull request #5729 from harold-b/hb.fix-foreign-signatures
Relax `signature_parameter_similar_enough` on struct params and fix various foreign signatures
2025-09-30 10:41:51 +01:00
gingerBill 51a8660d52 Disallow dynamic-literals withint procedure scopes where context is not defined 2025-09-30 10:24:20 +01:00
149-code 8908e82258 Removed unused pBufferOut parameters 2025-09-29 23:36:14 -05:00
Harold Brenes fc44b10431 Include objc runtime type dependencies only on darwin 2025-09-29 20:38:16 -04:00
Harold Brenes 481deee4ae Fix entity nullptr check 2025-09-29 20:38:16 -04:00
Harold Brenes 9425954861 Ignore patterns for local development in CMake 2025-09-29 20:38:16 -04:00
Harold Brenes 6d9ace4a2c Remove outdated todo 2025-09-29 20:38:16 -04:00
Harold Brenes 5af13f5d53 Automatically emit objc_msgSend calls when calling imported or implemented 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
2025-09-29 20:37:48 -04:00
Harold Brenes 0fdac0bd8c Fix test inet_pton call in test_arpa_inet 2025-09-29 20:29:34 -04:00
Harold Brenes c23d30f050 Fix printf format 2025-09-29 19:58:28 -04:00
Harold Brenes 24daa4427c Fix various foreign signatures 2025-09-29 19:58:14 -04:00
Username-Leon d203dff09f Removed 0UL check.
Thought unsigned long was consistent across platforms
2025-09-29 19:09:11 +02:00
Username-Leon cef381261a Fixed vulkan bindings.
In vendor/vulkan, vendor constants ending with EXT/AMD/NV/NVX/GOOGLE/KHX (all except KHR) are now present. VK_SHADER_UNUSED_KHR (as well as others previously absent) was improperly translated from (~0U) to 0. Explicit checks for "(~0U)", "(~0UL)" and "(~0ULL)" have been added to produce ~u32(0) and ~u64(0). Hardcoded constants in the bindings generator ending with EXT have been removed as they are now properly caught by the regex.
2025-09-29 18:44:07 +02:00
gingerBill 34d040cef1 Correct format strings 2025-09-29 16:51:38 +01:00
gingerBill 9e8be055c1 Rename to -build-diagnostics 2025-09-29 16:16:19 +01:00
gingerBill 11712627cb Add module stuff to -para-poly-diagnostics 2025-09-29 16:14:55 +01:00
gingerBill 9b4c0ea492 Type erase the internals of runtime.copy_* 2025-09-29 15:12:55 +01:00
gingerBill 17394d8b14 Merge pull request #5725 from odin-lang/bill/parapoly-diagnostics
`-para-poly-diagnostics`
2025-09-29 15:10:57 +01:00
gingerBill 1fc1d8e451 Change sort for single instanced procedures 2025-09-29 14:32:21 +01:00
gingerBill 53f4fc1cbb Add -para-poly-diagnostics 2025-09-29 14:03:32 +01:00
gingerBill 11dc6680d2 Merge pull request #5723 from odin-lang/bill/const-union
Basic support for constant union literals
2025-09-29 13:12:07 +01:00
gingerBill 240b2f1819 Disable #raw_union constants for the time being 2025-09-29 12:54:52 +01:00
gingerBill b711e92968 Add bit cast 2025-09-29 12:27:28 +01:00
gingerBill 89645921e2 Only add packing if the padding is non-zero for a #raw_union constant 2025-09-29 11:00:08 +01:00
gingerBill e511f07d76 Short circuit for Union{} 2025-09-29 10:45:24 +01:00
gingerBill 0d946268ee Disallow constant access x.y on struct #raw_union 2025-09-29 10:41:35 +01:00
gingerBill 10ba956d6a Rudimentary support for some constant struct #raw_union 2025-09-29 10:28:16 +01:00
gingerBill 1f2cedcf78 Remove debug code 2025-09-29 09:53:04 +01:00
gingerBill 4f442c6045 Rearrange const union initialization so that it is priority 2025-09-29 09:51:23 +01:00
gingerBill 4877214f34 Add more check_is_operand_compound_lit_constant uses 2025-09-28 23:53:07 +01:00
gingerBill dd15a5bc8e Do not need an extra local copy for the slices 2025-09-28 23:32:37 +01:00
gingerBill 6db8943efa Check for empty compound literal early for constants 2025-09-28 23:25:27 +01:00
gingerBill 5b88d2363d Correct failure check for const cast 2025-09-28 23:19:43 +01:00
gingerBill cbab97fbd7 Use memcpy for local constant slice arrays from a global constant 2025-09-28 22:50:36 +01:00
gingerBill 17c9e1d76b Fix global initialization when non was set 2025-09-28 22:11:46 +01:00
gingerBill 1df9f1d01d Fix constant union{proc()} 2025-09-28 22:02:25 +01:00
gingerBill 8be18d9a40 Allow for constant []typeid 2025-09-28 21:47:56 +01:00
gingerBill 35a32d41e0 Fix Union{} 2025-09-28 21:08:47 +01:00
gingerBill f743110f63 Correct union type checking for constants 2025-09-28 21:00:36 +01:00
gingerBill 421bec2d17 Merge branch 'master' into bill/const-union 2025-09-28 20:48:23 +01:00
gingerBill d3b8770318 Add #+test to base32_test.odin 2025-09-28 20:48:13 +01:00
gingerBill 547477abf6 Add #+test to replace _test.odin 2025-09-28 20:47:32 +01:00
gingerBill 17204bd1c2 Global const unions with @(rodata) 2025-09-28 20:40:26 +01:00
gingerBill ffdfbfe2c2 Begin to support constant array of unions 2025-09-28 20:20:26 +01:00
gingerBill a974c51d57 First step towards constant unions 2025-09-28 19:52:52 +01:00
gingerBill 0233dc5d31 Remove stray 0 2025-09-27 14:15:51 +01:00