summaryrefslogtreecommitdiff
path: root/modules/gdscript
AgeCommit message (Collapse)Author
2019-04-05Fix -Wimplicit-fallthrough warnings from GCC 8Rémi Verschelde
Adds `FALLTHROUGH` macro to specify when a fallthrough is intentional. Can be replaced by `[[fallthrough]]` if/when we switch to C++17. The warning is now enabled by default for GCC on `extra` warnings level (part of GCC's `-Wextra`). It's not enabled in Clang's `-Wextra` yet, but we could enable it manually once we switch to C++11. There's no equivalent feature in MSVC for now. Fixes #26135.
2019-04-01Merge pull request #27485 from Faless/io/encode_decode_safety_prRémi Verschelde
Safer encode/decode variant.
2019-04-01Add object encoding param to serialization methodsFabio Alessandrelli
Network peers get_var/put_var File get_var/store_var GDScript/Mono/VisualScript bytes2var/var2bytes Add MultiplayerAPI.allow_object_decoding member which deprecates PacketPeer.allow_object_decoding. Break ABI compatibaility (API compatibility for GDNative).
2019-04-01doc: Bump version to 3.2Rémi Verschelde
2019-04-01Merge pull request #26097 from ↵Rémi Verschelde
danielspaniol/25955-wrong-unreachable-warning-after-returning-from-matchs-wildcard-pattern Fix: Wrong unreachable warning after returning from match's wildcard pattern #25955
2019-03-27Merge pull request #27128 from bojidar-bg/27111-gdscript-confounding-classRémi Verschelde
Fix GDScriptCompiler bugging out with identically-named inner class
2019-03-16Fix GDScriptCompiler bugging out with identically-named inner classBojidar Marinov
Fixes #27111
2019-03-14Fix duplicated lines in GDScript bytecodeBojidar Marinov
Fixes #26789
2019-03-08Fix typo in GDScript narrowing conversion warning messageHugo Locurcio
This closes #26790.
2019-03-05Fix enums coming from other classes without preloadBojidar Marinov
Fix #19704, fix #26001
2019-03-04Close file handles after use of new get_as_utf8_strings, fixes #26578Juan Linietsky
2019-03-04Revert "Forbid implicit type conversion in GDScript"Rémi Verschelde
2019-03-04Merge pull request #26562 from vnen/gdscript-no-implicit-castRémi Verschelde
Forbid implicit type conversion in GDScript
2019-03-03GDScript: Fix issue when detecting file class in inner classGeorge Marques
2019-03-03GDScript: Forbid implicit type conversionGeorge Marques
Since types are not present in release builds, this could cause issues where a variable does not have the exact defined type.
2019-03-03GDScript: Allow `for` iterator to be rededefinedGeorge Marques
2019-03-03Merge pull request #26547 from vnen/gdscript-dependency-parseJuan Linietsky
Add a parse mode for GDScript which doesn't load dependencies
2019-03-03Add a dependency search mode for GDScript parserGeorge Marques
- This mode avoids loading any other resource. - Search for class_name now uses this mode, to avoid loading in the scan thread. - Implement get_dependencies() for GDScript loader, now exporting dependencies only should include the preloaded resources.
2019-03-03Merge pull request #26528 from bojidar-bg/26047-gdscript-object-argumentGeorge Marques
Allow parameters passed to GDScript functions to be nulled
2019-03-03Allow parameters passed to GDScript functions to be nulledBojidar Marinov
Previous version resulted in confusing (but actually right) errors about converting "from Object to Object", since CallError does not include information about the actual types involved.
2019-03-03Fix GDScript checking for assigning to a constant only in releaseBojidar Marinov
2019-02-28Merge pull request #26034 from QbieShay/issue_25596Rémi Verschelde
Inheriting from virtual class no longer causes the engine to crash.
2019-02-27Inheriting from virtual class no longer causes the engine to crash, it ↵QbieShay
prints an error instead. Co-authored-by: Hein-Pieter van Braam <hp@tmm.cx>
2019-02-27Merge pull request #26134 from marxin/fix-Wsign-compareRémi Verschelde
Fix -Wsign-compare warnings.
2019-02-27Fix -Wsign-compare warnings.marxin
I decided to modify code in a defensive way. Ideally functions like size() or length() should return an unsigned type.
2019-02-26Fix GDScript exports having the wrong type of default value by converting itBojidar Marinov
Also, initialize elements of PoolArrays when resizing them in the editor. Fixes #26066.
2019-02-24Merge pull request #25018 from AllanDaemon/#24895George Marques
Fix support for optional parameters in setters
2019-02-22Merge pull request #26132 from marxin/fix-Wignored-qualifiersRémi Verschelde
Fix warnings seen with -Wignored-qualifiers.
2019-02-22Merge pull request #26099 from marxin/fix-Wtype-limits-warningsRémi Verschelde
Fix all -Wtype-limits warnings.
2019-02-21Request to use load when cyclic reference is found, closes #26119Juan Linietsky
2019-02-21Fix warnings seen with -Wignored-qualifiers.marxin
2019-02-21Fix all -Wtype-limits warnings.marxin
2019-02-20Require `return` in all match branchesDaniel Spaniol
Before the parser only checked if the catch-all branch has a return in order to determine if the entire match block has a return. This code block was assumed to always return. match value: "test": print("test") _: return Now as soon as one of the branches has no return, the entire match block is marked to not have a return.
2019-02-20Add -Wshadow=local to warnings and fix reported issues.marxin
Fixes #25316.
2019-02-20GDScript: Remove unused `switch`, `case` and `do` CF keywordsRémi Verschelde
They had been reserved for future implementation, but we now have the `match` CF keyword which does the same and more. According to @reduz `do` was even added by mistake when copying from the shader language parser, it was never intended to add support for `do`... `while` loops, as the syntax would be awkward in GDScript, and the added sugar is not worth it. Fixes #25787.
2019-02-16Merge pull request #25715 from hpvb/fix-25598Rémi Verschelde
Add a maximum recusion depth to _guess_expression_type
2019-02-14Merge pull request #25866 from neikeq/issue-25121Rémi Verschelde
Fix exported property values being lost if base GDScript fails to parse
2019-02-14Fix exported property values being lost if base GDScript fails to parseIgnacio Etcheverry
2019-02-13Fix typos with codespellRémi Verschelde
Using codespell 1.14.0. Method: ``` $ cat > ../godot-word-whitelist.txt << EOF ang doubleclick lod nd numer que te unselect EOF $ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po" $ git diff // undo unwanted changes ```
2019-02-12Core: Ensure classes match their header filenameRémi Verschelde
Also drop some unused files. Renamed: - `core/dvector.h` -> `pool_vector.h` - `core/io/resource_import.h` -> `resource_importer.h` - `core/sort.h` -> `sort_array.h` - `core/string_db.h` -> `string_name.h` Dropped: - `core/allocators.h` - `core/os/shell.h` - `core/variant_construct_string.cpp`
2019-02-12Merge pull request #25481 from hpvb/fix-ubsan-asan-reportsRémi Verschelde
Fix many asan and ubsan reported issues
2019-02-12Merge pull request #25550 from DualMatrix/fix-25357Rémi Verschelde
Fixed Null appearing inside export variables with type hints and no default value
2019-02-09Merge pull request #25650 from willnationsdev/script-iconRémi Verschelde
Fix script class icons looking for paths at runtime
2019-02-08Add a maximum recusion depth to _guess_expression_typeHein-Pieter van Braam
When a recursive declaration ends up in a GDScript file the _guess_expression_type function would start looping and eventually run out of stack space. We now cap recusion for this function to 100 frames. This fixes #25598
2019-02-06Fix script class icon filepath lookups at runtime.Will Nations
2019-02-01Fixed Null appearing inside export variables with type hints and no default ↵DualMatrix
value The default value of the type is now used to initialise it. export(int) A Will now have A be 0 istead of Null even though it still showed as 0 before in the inspector, fixes #25357
2019-01-31Fix wrong error messages for invalid arguments when calling functions ↵Bojidar Marinov
through call Fixes #25505
2019-01-30Fix many asan and ubsan reported issuesHein-Pieter van Braam
This allows most demos to run without any ubsan or asan errors. There are still some things in thirdpart/ and some things in AudioServer that needs a look but this fixes a lot of issues. This should help debug less obvious issues, hopefully. This fixes #25217 and fixes #25218
2019-01-25Ensure get script method list also checks base classes, fixes #23384Juan Linietsky
2019-01-23GDScript: do second pass of parsing on releaseGeorge Marques
Some construct (like match) actually depends on the second pass. This adds some extra checks to not perform specific type-checks on release since not all type information is available.