Rémi Verschelde
918de768a5
Merge pull request #27711 from neikeq/ifdef-clang-tidy
...
Replace a few #if/#elif with #ifdef and "#elif defined"
2019-04-08 12:24:30 +02:00
Rémi Verschelde
668bf1fd0d
Merge pull request #27710 from Calinou/script-templates-typed-gdscript
...
Add support for type hints in non-default script editor templates
2019-04-08 10:13:59 +02:00
Rémi Verschelde
d211aff777
Merge pull request #27231 from Chaosus/smoothstep
...
Added smoothstep built-in function
2019-04-08 10:03:42 +02:00
Chaosus
514a3fb96a
Added smoothstep built-in function
2019-04-07 14:11:26 +03:00
Ignacio Etcheverry
ad2127a3e8
Replace a few #if/#elif with #ifdef and "#elif defined"
2019-04-05 23:41:51 +02:00
Hugo Locurcio
00799fc8c2
Add support for type hints in non-default script editor templates
...
This also refactors template processing to avoid repetition.
This closes #27074 .
2019-04-05 23:19:30 +02:00
Rémi Verschelde
fc370b3feb
Fix -Wimplicit-fallthrough warnings from GCC 8
...
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-05 15:14:53 +02:00
Rémi Verschelde
e3bd84fa57
Merge pull request #27485 from Faless/io/encode_decode_safety_pr
...
Safer encode/decode variant.
2019-04-01 17:00:40 +02:00
Fabio Alessandrelli
393e62b98a
Add object encoding param to serialization methods
...
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-01 15:53:19 +02:00
Rémi Verschelde
39c868171e
doc: Bump version to 3.2
2019-04-01 12:33:56 +02:00
Rémi Verschelde
4ec384f9d4
Merge pull request #26097 from danielspaniol/25955-wrong-unreachable-warning-after-returning-from-matchs-wildcard-pattern
...
Fix: Wrong unreachable warning after returning from match's wildcard pattern #25955
2019-04-01 12:17:17 +02:00
Rémi Verschelde
492153878f
Merge pull request #27128 from bojidar-bg/27111-gdscript-confounding-class
...
Fix GDScriptCompiler bugging out with identically-named inner class
2019-03-27 16:57:04 +01:00
Bojidar Marinov
466a76ac2c
Fix GDScriptCompiler bugging out with identically-named inner class
...
Fixes #27111
2019-03-16 20:41:16 +02:00
Bojidar Marinov
b64f9f03f8
Fix duplicated lines in GDScript bytecode
...
Fixes #26789
2019-03-14 18:38:07 +02:00
Hugo Locurcio
5a574a4f29
Fix typo in GDScript narrowing conversion warning message
...
This closes #26790 .
2019-03-08 14:28:33 +01:00
Bojidar Marinov
9637e42705
Fix enums coming from other classes without preload
...
Fix #19704 , fix #26001
2019-03-05 23:19:02 +02:00
Juan Linietsky
b63c506ad8
Close file handles after use of new get_as_utf8_strings, fixes #26578
2019-03-04 09:53:02 -03:00
Rémi Verschelde
425ec6914c
Revert "Forbid implicit type conversion in GDScript"
2019-03-04 12:25:59 +01:00
Rémi Verschelde
7889e9b7ca
Merge pull request #26562 from vnen/gdscript-no-implicit-cast
...
Forbid implicit type conversion in GDScript
2019-03-04 10:19:00 +01:00
George Marques
67fee40483
GDScript: Fix issue when detecting file class in inner class
2019-03-03 22:53:50 -03:00
George Marques
d0b08342b8
GDScript: Forbid implicit type conversion
...
Since types are not present in release builds, this could cause issues
where a variable does not have the exact defined type.
2019-03-03 22:25:22 -03:00
George Marques
b24cb92240
GDScript: Allow `for` iterator to be rededefined
2019-03-03 21:39:42 -03:00
Juan Linietsky
a9fe834a8e
Merge pull request #26547 from vnen/gdscript-dependency-parse
...
Add a parse mode for GDScript which doesn't load dependencies
2019-03-03 18:00:12 -03:00
George Marques
bda60bfa29
Add a dependency search mode for GDScript parser
...
- 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-03 16:51:54 -03:00
George Marques
9db96d9f81
Merge pull request #26528 from bojidar-bg/26047-gdscript-object-argument
...
Allow parameters passed to GDScript functions to be nulled
2019-03-03 11:39:25 -03:00
Bojidar Marinov
f0efc7521e
Allow parameters passed to GDScript functions to be nulled
...
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-03 15:24:06 +02:00
Bojidar Marinov
f207b2fe0e
Fix GDScript checking for assigning to a constant only in release
2019-03-03 12:36:27 +02:00
Rémi Verschelde
f2003b1a7e
Merge pull request #26034 from QbieShay/issue_25596
...
Inheriting from virtual class no longer causes the engine to crash.
2019-02-28 11:00:20 +01:00
QbieShay
8f22c2684f
Inheriting from virtual class no longer causes the engine to crash, it prints an error instead.
...
Co-authored-by: Hein-Pieter van Braam <hp@tmm.cx>
2019-02-27 20:42:20 +01:00
Rémi Verschelde
426a6fdc17
Merge pull request #26134 from marxin/fix-Wsign-compare
...
Fix -Wsign-compare warnings.
2019-02-27 09:22:47 +01:00
marxin
e5f665c718
Fix -Wsign-compare warnings.
...
I decided to modify code in a defensive way. Ideally functions
like size() or length() should return an unsigned type.
2019-02-27 07:45:57 +01:00
Bojidar Marinov
db7864c1fd
Fix GDScript exports having the wrong type of default value by converting it
...
Also, initialize elements of PoolArrays when resizing them in the editor.
Fixes #26066 .
2019-02-26 14:58:39 +02:00
George Marques
755c690252
Merge pull request #25018 from AllanDaemon/#24895
...
Fix support for optional parameters in setters
2019-02-24 10:45:50 -03:00
Rémi Verschelde
726f31e992
Merge pull request #26132 from marxin/fix-Wignored-qualifiers
...
Fix warnings seen with -Wignored-qualifiers.
2019-02-22 09:55:27 +01:00
Rémi Verschelde
60fe9321ac
Merge pull request #26099 from marxin/fix-Wtype-limits-warnings
...
Fix all -Wtype-limits warnings.
2019-02-22 09:44:59 +01:00
Juan Linietsky
d13ac2a413
Request to use load when cyclic reference is found, closes #26119
2019-02-21 17:27:07 -03:00
marxin
c11e7ffd0e
Fix warnings seen with -Wignored-qualifiers.
2019-02-21 20:24:29 +01:00
marxin
7de7f0ef17
Fix all -Wtype-limits warnings.
2019-02-21 19:34:35 +01:00
Daniel Spaniol
79176decd5
Require `return` in all match branches
...
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-20 21:38:11 +01:00
marxin
8d51618949
Add -Wshadow=local to warnings and fix reported issues.
...
Fixes #25316 .
2019-02-20 19:44:12 +01:00
Rémi Verschelde
d35003d92a
GDScript: Remove unused `switch`, `case` and `do` CF keywords
...
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-20 14:05:08 +01:00
Rémi Verschelde
fd60724c3d
Merge pull request #25715 from hpvb/fix-25598
...
Add a maximum recusion depth to _guess_expression_type
2019-02-16 14:39:57 +01:00
Rémi Verschelde
89ca15693e
Merge pull request #25866 from neikeq/issue-25121
...
Fix exported property values being lost if base GDScript fails to parse
2019-02-14 09:21:19 +01:00
Ignacio Etcheverry
2f8d1a321a
Fix exported property values being lost if base GDScript fails to parse
2019-02-14 02:36:19 +01:00
Rémi Verschelde
5fc86026ca
Fix typos with codespell
...
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-13 09:23:29 +01:00
Rémi Verschelde
b7cc2bb1e2
Core: Ensure classes match their header filename
...
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-12 13:34:25 +01:00
Rémi Verschelde
13c50e8aa5
Merge pull request #25481 from hpvb/fix-ubsan-asan-reports
...
Fix many asan and ubsan reported issues
2019-02-12 12:21:01 +01:00
Rémi Verschelde
e40395669c
Merge pull request #25550 from DualMatrix/fix-25357
...
Fixed Null appearing inside export variables with type hints and no default value
2019-02-12 12:01:22 +01:00
Rémi Verschelde
6c243326bd
Merge pull request #25650 from willnationsdev/script-icon
...
Fix script class icons looking for paths at runtime
2019-02-09 12:22:51 +01:00
Hein-Pieter van Braam
e937e74b69
Add a maximum recusion depth to _guess_expression_type
...
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-08 22:39:08 +01:00