Commit Graph

1928 Commits

Author SHA1 Message Date
6cba2143de Merge pull request #59056 from Chaosus/gds_fix_extends_crash 2022-03-22 08:27:03 +03:00
7befa7234d Merge pull request #58971 from Chaosus/gds_multiline_annotation 2022-03-22 08:25:37 +03:00
188fa0c846 Merge pull request #59194 from Chaosus/gds_export_flags_limit_error
Add an error emitting when the `@export_flags` arg count is exceeded
2022-03-21 21:21:49 +01:00
8a6ab899ec Add an error emitting when the @export_flags arg count is exceeded 2022-03-16 17:12:15 +03:00
5a99aa3b3a Fix default value count checking for inherited function 2022-03-14 18:00:42 +03:00
d009d96a92 Prevent crash due to empty error message on empty extends in GDScript 2022-03-12 09:46:51 +03:00
85488f12f3 Allow making multiline annotations in GDScript 2022-03-10 10:56:14 +03:00
21637dfc25 Remove VARIANT_ARG* macros
* Very old macros from the time Godot was created.
* Limited arguments to 5 (then later changed to 8) in many places.
* They were replaced by C++11 Variadic Templates.
* Renamed methods that take argument pointers to have a "p" suffix. This was used in some places and not in others, so made it standard.
* Also added a dereference check for Variant*. Helped catch a couple of bugs.
2022-03-09 18:39:13 +01:00
4fee0e3b7d Fix VisualShaderNodeCustom script template 2022-03-09 09:45:20 +03:00
8c3d8b12ed Merge pull request #58853 from V-Sekai/default-arg-values 2022-03-07 10:40:42 +01:00
2eaadb1b52 Restore building web platform by enclosing resolve_function_signature. 2022-03-07 00:35:11 -08:00
53cf5eff9a Merge pull request #58847 from KoBeWi/editor_settings_mess 2022-03-07 08:38:15 +01:00
2057ea2883 Remove duplicate editor settings definitions 2022-03-06 22:05:49 +01:00
1ebcb58e69 GDScript: Check if method signature matches the parent
To guarantee polymorphism, a method signature must be compatible with
the parent. This checks if:

1. Return type is the same.
2. The subclass method takes at least the same amount of parameters.
3. The matching parameters have the same type.
4. If the subclass takes more parameters, all of the extra ones have a
default value.
5. If the superclass has default values, so must have the subclass.

There's a few test cases to ensure this holds up.
2022-03-06 11:16:20 -03:00
7d48afa96d Add test cases for accessing parent elements from child class 2022-03-04 12:41:20 -05:00
79bbe57244 Merge pull request #56830 from strank/parent-signals 2022-03-04 17:29:49 +01:00
bb8c4acdc9 Merge pull request #58185 from V-Sekai/explicit_variant_assignment_fix 2022-03-04 14:56:38 +01:00
e133adeb8c Merge pull request #58201 from V-Sekai/debugger_locals 2022-03-04 14:50:56 +01:00
4bbd7417c4 Merge pull request #58320 from mphe/fix_object_typed_arrays 2022-03-04 14:49:06 +01:00
a4195a3ea8 Merge pull request #58250 from V-Sekai/typed_array_fix 2022-03-04 14:48:40 +01:00
d31aaed172 Merge pull request #58626 from groud/fix_gdscript_analyser_crash 2022-03-04 14:15:59 +01:00
9b94a1dc4a Merge pull request #58670 from KoBeWi/internal_debugger 2022-03-04 10:44:56 +01:00
57838fc0ee Merge pull request #58262 from Sauermann/fix-range-doc
Describe usage of float in range documentation
2022-03-03 13:12:29 +01:00
98dd04c38c Fix debugger not opening built-in scripts 2022-03-02 17:57:56 +01:00
7ae988ce5e Fix a crash in GDScriptAnalyzer when a script class's file is not found 2022-02-28 12:20:00 +01:00
e3b70f3582 Merge pull request #58244 from V-Sekai/typed_fail_case_return 2022-02-23 14:12:14 +01:00
95783f7bfc Merge pull request #58415 from V-Sekai/cyclic_assignment_gdscript_fixes 2022-02-23 12:09:44 +01:00
849d34ba8e Rename motion_velocity to velocity 2022-02-22 23:31:33 -08:00
b6aa4ed55d Fixes cyclic detection from variables assigning themselves to themselves in autocomplete, and restricts initialization of variables from other variables which have not been declared above it in class body 2022-02-22 01:21:21 +00:00
cea0630fef Fix typed arrays for Object based types
Fixes https://github.com/godotengine/godot/issues/53771.
2022-02-19 16:27:06 +01:00
ae0026bc7b Make 'is_attribute' false during parse error to prevent crash 2022-02-18 12:52:46 +00:00
bac8e451c0 Describe usage of float in range documentation 2022-02-18 00:59:22 +01:00
ab2a8bd1d8 Fix using typed arrays based on script classes 2022-02-17 17:34:53 +00:00
62d87fbd8b Return a correctly typed variant in case of a function error to prevent hard crashes 2022-02-17 15:45:19 +00:00
657b9b6596 Fix local variables not showing when breaking on final line 2022-02-16 18:12:38 +00:00
6553f5c242 Convert _notification methods to switch - Chunk C 2022-02-16 13:03:05 -05:00
d45c3cdd1d Fix error when assigning to an explicitly annotated variant from an ambiguous source 2022-02-16 13:25:27 +00:00
b68dd2e189 Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00
b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
dcf19f8914 Fix "Identifier not found" compiler error when accessing inherited signals or functions as callables. 2022-02-11 20:45:04 -05:00
317cd0b19a Refactor some object type checking code with cast_to
Less stringly typed logic, and less String allocations and comparisons.
2022-02-08 10:08:34 +01:00
086256431a [Net] Add type check to GDScriptRPCCallable.
It will print an error when using an RPC defined on an object which does
not extend Node.
2022-02-07 13:39:45 +01:00
994638da4f [Net] Implement GDScript custom RPC callable. 2022-02-07 13:39:10 +01:00
6a56314eab Merge pull request #57748 from fabriceci/rename-script-template-variable 2022-02-07 13:22:23 +01:00
e81ccaf270 rename jump force to jump velocity 2022-02-07 11:46:30 +01:00
a6e280c5de Add some more fixes to visual shader 2022-02-07 11:28:42 +03:00
de45534fed Highlight "namespace" as a GDScript keyword in the syntax highlighter
Like "trait" and "yield", "namespace" is currently not implemented
but is still reserved for future use.
2022-02-04 17:46:13 +01:00
89eb6d372d Merge pull request #57591 from vnen/gdscript-enum-fixes 2022-02-04 13:49:15 +01:00
244db37508 Cleanup and move char functions to the char_utils.h header. 2022-02-04 11:35:01 +02:00
adbe948bda String: Add contains(). 2022-02-04 01:28:02 +05:45