George L. Albany
9d26e3418c
Fix GCC 14 -Wtemplate-id-cdtor warning
...
As was fixed with godotengine/godot#91208
(cherry picked from commit 7b31f39bea
)
2024-09-03 17:16:17 -05:00
Klaim (Joël Lamotte)
deaf37120f
removes warnings generated by GDCLASS usage
...
This change removes the warnings (unused parameters) coming from code injected by the GDCLASS macro.
Contrary to warnings coming from the normal source code which can be suppressed with most compiles by specifying the include directories of this library as external or system,
when the code is injected through a macro it is considered in the context of the user, which is the source code of user of the library.
That forces the users to modify their code to hide the warnings coming from the mandatory `GDCLASS` here.
That's why it's important to remove these warning from that specific macro and ideally any other macro that the user must use.
(cherry picked from commit 738859f49b
)
2024-09-03 17:11:52 -05:00
Chris Cranford
cc70884db3
Make sure `_get` and `_set` dispatch up the class hierarchy
...
(cherry picked from commit c77d44f3f6
)
2024-09-03 17:11:10 -05:00
Aaron Franke
a0d56336c3
[4.2] Fix missing MAKE_TYPED_ARRAY_INFO for Packed*Arrays
2024-08-22 21:04:51 -07:00
Yuri Sizov
80aec184df
Fix argument metadata when binding methods
...
While there doesn't seem to be any runtime issues,
this triggers the address sanitizer in a few ways,
depending on what kind of method you're
binding.
(cherry picked from commit 2b34bd0d8b
)
2024-07-17 09:19:30 -05:00
A Thousand Ships
18c31e3e31
Fix sharing of typed arrays from constructor
...
(cherry picked from commit 41aa71f8c3
)
2024-07-17 09:18:11 -05:00
Thaddeus Crews
c35e7545b7
Integrate `.pre-commit-config.yaml`
...
(cherry picked from commit e0d363aad8
)
2024-07-17 09:17:36 -05:00
Thaddeus Crews
1a22e43075
Fix `#include` formatting
...
(cherry picked from commit 999018e7d1
)
2024-07-17 09:14:04 -05:00
David Snopek
07b6a03d77
Explicitly refer to `godot` namespace in `GDREGISTER_*_CLASS()` macros
...
(cherry picked from commit 246a803954
)
2024-06-14 12:44:10 -05:00
David Snopek
a246aaaaf6
Fix NOTIFICATION_POSTINITIALIZE sent twice to native parent class
...
(cherry picked from commit 06373ce1cf
)
2024-05-17 16:41:42 -05:00
Daylily-Zeleen
e8e424ade8
mark return value of `get_class_static` and `get_parent_class_static` as const
...
(cherry picked from commit 3db8549e19
)
2024-05-17 16:40:30 -05:00
David Snopek
18354f9b9b
Clean up instance bindings for engine singletons to prevent crash
...
(cherry picked from commit 88df025aa0
)
2024-05-17 16:40:13 -05:00
David Snopek
acee69a3f6
Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations
...
(cherry picked from commit e1b3b32db5
)
2024-05-17 16:35:22 -05:00
David Snopek
ddfcca62a8
Correctly handle `Object *` arguments that were encoded as `nullptr`
...
(cherry picked from commit 37542dc2ec
)
2024-05-17 16:34:41 -05:00
David Snopek
8aef77a64d
Give compile-time error if registering a class without its own `_bind_methods()` function
...
(cherry picked from commit ca46ef4d25
)
2024-05-17 16:33:38 -05:00
pupil1337
897280444b
Add static_assert() for register_class
...
(cherry picked from commit 1fa7a9cb19
)
2024-05-17 16:32:54 -05:00
A Thousand Ships
3d814f6e87
[Math] Add `is_finite` methods
...
(cherry picked from commit d389171905
)
2024-05-17 16:32:05 -05:00
Chris Cranford
8f8ea90088
Implement to/from dict helpers for PropertyInfo/MethodInfo
...
(cherry picked from commit 2a041b5240
)
2024-05-17 16:30:54 -05:00
David Snopek
9afbdb9cf6
Backport miscellaneous changes that can't be cherry-picked
2024-05-08 16:49:18 -05:00
Chris Cranford
77f1d228cd
Fix PropertyInfo to use hint/usage default constants
...
(cherry picked from commit e160966163
)
2024-04-17 11:09:24 -05:00
A Thousand Ships
f8477fb9f2
Fix incorrect utility call signature
...
(cherry picked from commit d055b575fb
)
2024-04-08 11:50:07 -05:00
Thaddeus Crews
7473b984cb
Enforce template syntax `typename` over `class`
...
(cherry picked from commit 87f5fb0691
)
2024-04-08 11:49:37 -05:00
David Snopek
98ad839827
Avoid creating most objects that Godot is going to use placement new to initialize
...
(cherry picked from commit c4fde852e6
)
2024-04-08 11:45:25 -05:00
A Thousand Ships
f002ca18c7
Fix invalid `void` return in `BitField`
...
(cherry picked from commit 7ed8ef7221
)
2024-03-11 12:51:07 -05:00
Marc Gilleron
3fe7c2e87b
Fix explicit namespaces in macros
...
(cherry picked from commit e607790647
)
2024-03-11 12:50:56 -05:00
David Snopek
7ddd278dea
Fix _notification with parent and child classes
...
(cherry picked from commit 23c010900c
)
2024-03-11 12:50:43 -05:00
bruvzg
cae4bf58ac
[Core] Improve `CowData` and `Memory` metadata alignment.
...
(cherry picked from commit b173a4d935
)
2024-03-11 12:47:09 -05:00
DaylilyZeleen
dc19986497
Fix object return value of builtin types' methods.
...
(cherry picked from commit 6a3753c076
)
2024-03-11 12:46:39 -05:00
bruvzg
c2d4ccd592
Switch to 64-bit ints.
...
(cherry picked from commit 59a5a8b104
)
2024-03-11 12:46:27 -05:00
Chris Cranford
dc76664cea
Rework GDCLASS macro to allow pure virtual functions
...
(cherry picked from commit 5f350e2572
)
2024-01-22 15:30:04 -06:00
A Thousand Ships
97214ecd7a
Fix `AABB.encloses` failing on shared upper bound
...
(cherry picked from commit 3943e41d2f
)
2024-01-22 15:29:53 -06:00
A Thousand Ships
c0b2d85ffc
Add missing `OP_POWER` operator to `Variant`
...
(cherry picked from commit f037a697eb
)
2024-01-22 15:29:27 -06:00
A Thousand Ships
62eed50524
Fix expected argument count for call errors
...
(cherry picked from commit b77cb648c3
)
2024-01-22 15:29:18 -06:00
Aaron Franke
0472b6bdd4
Add PackedRealArray as an alias for PackedFloat(32/64)Array
...
(cherry picked from commit 646c71c277
)
2024-01-22 15:28:46 -06:00
bruvzg
adc9def046
[iOS] Fix initialisation/termination of multiple statically linked extensions.
2023-11-23 13:38:20 +02:00
David Snopek
f426b12b5b
Fix comparison of `Callable`s from callable_mp() of the same method
2023-11-17 12:49:53 -06:00
David Snopek
4439a4a569
Merge pull request #1280 from dsnopek/callable-custom
...
Add `CallableCustom` that devs can use in their GDExtensions
2023-11-17 12:48:39 -06:00
David Snopek
c4b7b08c91
Merge pull request #1298 from Repiteo/int-to-variant-fix
...
Add missing int→Variant conversions
2023-11-15 09:07:48 -06:00
bruvzg
29b34d92bb
[iOS] Fix building as static library or xcframework, add iOS config and xcframework build script to the test project.
2023-11-09 20:01:59 +02:00
Thaddeus Crews
bcac96c8c2
Add missing int→Variant conversions
2023-11-08 09:45:53 -06:00
David Snopek
d33bd47219
Add `CallableCustom` that devs can use in their GDExtensions
2023-11-06 00:09:06 -06:00
Thaddeus Crews
6eb5d450bd
GDCLASS synced by ending with "private:"
...
• Matches implementation used by modules and godot itself
• Apply same to GDEXTENSION_CLASS, setup with same diff-friendly spacers as GDCLASS
2023-11-01 12:44:14 -05:00
David Snopek
a61cdc8860
Add protections against registering classes that didn't use GDCLASS()
2023-10-22 08:44:09 -05:00
Martin Capitanio
a926b96103
clang: Add CallableCustomMethodPointerBase virtual destructor
...
Fixes #1272
+ clang++ (debian v16/v17) warning:
destructor called on
'godot::CallableCustomMethodPointerBase' that is abstract but has non-virtual destructor
[-Wdelete-abstract-non-virtual-dtor]
2023-10-19 09:37:11 +02:00
David Snopek
64eac01d04
Merge pull request #1266 from dsnopek/automatic-engine-class-registration
...
Automatically register only engine classes whose header has been included
2023-10-16 10:47:06 -05:00
David Snopek
b507b3e591
Automatically register only engine classes whose header has been included
2023-10-16 10:19:11 -05:00
Rémi Verschelde
4f0eb2f520
Merge pull request #1263 from dsnopek/string-name-new
...
Use the new `string_name_new_with_latin1_chars` function to improve StringName construction performance
2023-10-12 18:08:09 +02:00
Mikael Hermansson
6e05b978b8
Declare explicit specializations for `CharStringT`
2023-10-12 16:00:48 +02:00
David Snopek
3d814f9e4a
Use the new `string_name_new_with_latin1_chars` function to improve StringName construction performance
2023-10-09 16:59:29 -05:00
David Snopek
df849651d9
Changes necessary for hot reload to work
2023-09-25 22:13:33 -05:00