Commit Graph

16993 Commits

Author SHA1 Message Date
samwega
01bbd981ad short C names deprecated (itoa, ftoa), C reimplementations of atoi and atof deprecated as parse_int() and parse_f64() are preferable 2025-10-03 20:54:18 +03:00
Jeroen van Rijn
6d8f4b85a8 Merge pull request #5745 from samwega/master
digit_to_int in strconv.odin
2025-10-02 20:11:57 +02:00
samwega
54805c600e After discord debate: replaced rtoi and utoi with just digit_to_int and simple comment 2025-10-02 20:45:00 +03:00
Franz Hoeltermann
a39697d84c Fix srgb <-> linear rgb conversion functions in core:math/linalg and add implementations for vector3 2025-10-02 17:31:59 +02:00
Jeroen van Rijn
b2e695e634 Merge pull request #5742 from samwega/utoi_and_rtoi_strconv
feat: added rtoi & utoi to core/strconv/strconv.odin
2025-10-02 14:53:58 +02:00
samwega
84e8b8d1ad fix: copy/paste replaced tabs with spaces 2025-10-02 15:45:21 +03:00
samwega
7eb26d8eac feat: added rtoi & utoi procs for converting a rune and a u8 character respectively to int 2025-10-02 15:21:44 +03:00
FourteenBrush
4a8d84c107 Make linux.IO_Vec.base a multipointer 2025-10-02 00:04:24 +02:00
xenobas
0158e4009b Fix proc group named operands issue #4971 2025-10-01 18:01:10 +01:00
Jakub Tomsu
588513a510 bitcast only non-pointer-like-element simd vectors, handle others like other aggregate types 2025-10-01 15:54:32 +02:00
Harold Brenes
2daaf57ad1 Correct signature (missing return value) for objc_msgSendSuper2 2025-09-30 14:16:43 -04:00
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