663978e8ba
GDScript: Properly check type info in release builds
...
This makes sure native methods and properties have the actual type
checked to compare for compatibility and inference.
2022-04-01 18:20:37 -03:00
f2166ba92f
GDScript: Don't coerce default values to the export hint type
...
This behavior is inconsistent with non tools builds and can create
issues. Instead, a warning is emitted if there's a type mismatch. If the
type can't be converted, an error is shown instead.
For the editor it gives a converted value to avoid issues with the
property editor, which expects the correct type.
2022-03-02 12:26:17 -03:00
a3fe028809
GDScript: Infer variable types on release
...
Otherwise this creates an inconsistency between debug and release
builds, potentially leading to crashes.
2022-02-09 09:07:18 -03:00
a627cdafc5
Update copyright statements to 2022
...
Happy new year to the wonderful Godot community!
2022-01-13 15:54:13 +01:00
bd828c4d81
Merge pull request #54227 from akien-mga/3.x-gdscript-multiline-indexing
2021-11-08 15:03:24 +01:00
42d385b312
clang-format: Disable alignment of operands, too unreliable
...
Sets `AlignOperands` to `DontAlign`.
`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
2021-10-28 13:23:38 +02:00
92664f03a9
GDScript: Support multiline indexing with []
...
Fixes #35417 .
2021-10-25 15:50:59 +02:00
b6b65e08d1
Remove redundant String operation from GDScript enum exports
2021-10-11 02:12:30 +03:00
1558f4a599
Speedup parsing big GDScript files
2021-10-07 07:39:56 +02:00
3f05c388a1
Merge pull request #52521 from kdiduk/52499-preload-parsing-error-when-newline-encountered
2021-10-06 10:13:19 +02:00
835143b7bd
#52499 Fix parsing 'preload': increase/decrease parenthesis count
2021-10-06 09:35:21 +02:00
3754759e26
Fix extends parsing breaking if it has the cursor
2021-10-01 11:31:05 -04:00
1de8f31448
CI: Upgrade Emscripten to 2.0.25
...
That's the version used by current containers for Godot 3.4.
Fixes a couple stray warnings that new Emscripten/LLVM catches.
2021-08-18 11:13:34 +02:00
6355877c0d
Merge pull request #47863 from mphe/same_line_warning_ignore
...
Allow warning-ignore in the same line as the respective warning
2021-05-18 15:08:00 +02:00
140350d767
Style: Enforce braces around if blocks and loops
...
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
a828398655
Style: Replaces uses of 0/NULL by nullptr (C++11)
...
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
2021-05-04 14:45:16 +02:00
64a63e0861
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine
2021-05-04 14:45:15 +02:00
3d15f04668
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine
2021-05-04 14:45:15 +02:00
6e600cb3f0
Style: Set clang-format Standard to c++14
2021-05-04 14:45:15 +02:00
3715ea268f
Allow warning-ignore in same line
2021-04-13 13:55:33 +02:00
49646383f1
Update copyright statements to 2021
...
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
(cherry picked from commit b5334d14f7 )
2021-01-13 16:17:06 +01:00
edb79e584a
Fix misleading editor message when redeclaring variables
2020-10-22 18:32:34 -03:00
82900e54ea
Fixes crash after using enums in export variables
2020-10-20 18:41:41 +08:00
a69c3cace2
GDScript signal lines marked as safe
...
Fix : #33927
2020-10-01 17:01:11 +05:30
bca2633f93
Merge pull request #41931 from RandomShaper/fix_gdscript_leaks_3.2
...
Fix leaks in GDScript (3.2)
2020-09-24 08:33:04 +02:00
c8859f0463
Fix typos with codespell
...
Using codespell 1.17.1.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2020-09-18 14:09:51 +02:00
a0969662cd
Prevent cyclic reference between script and its members
2020-09-09 13:51:53 +02:00
d04d329a1f
autocompletion inside comments bug fixed
...
Fix : #41438
2020-08-23 23:01:54 +05:30
d53f5b55ec
Auto completion enhanced for extends and class level identifier
2020-08-17 12:54:01 +05:30
e3f16a83dc
Fix line num of enums reported as the line before
2020-08-08 11:52:25 -04:00
9ce1fe59ea
Fix: editor crash on super constructor called
...
Fix : #39909
(cherry picked from commit 023b3f2786 )
2020-07-06 16:47:44 +02:00
fc92f83c30
Debugger stepping to incorrect line fix
...
Fix : #39296
(cherry picked from commit fc89c5c76d )
2020-06-18 11:29:28 +02:00
931a927a40
shodowed var warning for for loop counter
...
Fix : #39268
(cherry picked from commit 54835a5302 )
2020-06-18 10:51:45 +02:00
1cf8652945
Merge pull request #39263 from ThakeeNathees/is-operation-fail
...
[3.2] Fix `is` operation fail on get_script()
2020-06-16 16:28:43 +02:00
aeb5513bab
Tweak the GDScript error message about passed argument type mismatch
...
This makes it less confusing.
This closes https://github.com/godotengine/godot-proposals/issues/670 .
(cherry picked from commit 30053de182 )
2020-06-05 12:50:55 +02:00
837cba7567
predefined var check for for loop counter
...
(cherry picked from commit e153772de2 )
2020-06-05 12:45:12 +02:00
8f795cb38e
Fix is operation fail on get_script()
...
Fix : #39244
2020-06-03 21:04:48 +05:30
a0983637cf
GDScript: Allow get_script() to be considered a type
2020-06-03 10:48:43 -03:00
48a2fd7a3d
gdscript_parser: Fix "unreachable code" false positive for loops
...
Depending on the conditional statements of the 'for' and 'while' loops,
their body may not even execute once. For example:
func a():
var arr = []
for i in arr:
return i
# can be reached, but analysis says cannot
return -1
func b():
var should_loop = false
while should_loop:
return 1
# can be reached, but analysis says cannot
return 0
The parser will complain that the statements after the comment cannot
be reached, but it is clearly possible for our scenario. This is
because the parser falsely assumes that the loop body will always
execute at least once.
Fix the code to remove this assumption for both of those loops.
(cherry picked from commit 7b1423a61e )
2020-05-25 16:31:07 +02:00
9347a6ad6a
Trigger an error when trying to define a preexisting signal in GDScript
...
A class can't have multiple signals with the same name, but previously users
would not be alerted to a conflict while editing the script where it occurred.
Now a helpful error will appear in the editor during script parsing.
(cherry picked from commit 9e44739324 )
2020-05-25 16:29:20 +02:00
9ee77179b5
break, continue outside of a loop, match statement handled
...
(cherry picked from commit c076a2b7e9 )
2020-05-16 00:08:37 +02:00
d13f46bc41
shadowed var warning in nested block bug fix
...
Fix : #38552
(cherry picked from commit 79eee93b9a )
2020-05-14 22:01:45 +02:00
40c43da96f
set parser error when infer type is null
...
(cherry picked from commit 687b1941b4 )
2020-05-14 22:01:26 +02:00
e42318e41c
regression: var declaration type info parser bug fix
...
(cherry picked from commit e5d735851d )
2020-05-13 16:14:22 +02:00
6d7fb3d322
regression: static func can't access const fix
...
(cherry picked from commit e7f056dfac )
2020-05-13 16:14:08 +02:00
72aa9ce7fc
range() with non-numeric const argument crash fix
...
(cherry picked from commit 3e10392d48 )
2020-05-13 16:08:33 +02:00
55b4e0c44a
parser error for static func access non-static variables
...
Fix : #38408
(cherry picked from commit ce978517e0 )
2020-05-11 11:01:13 +02:00
22053ed75f
GDScript class var type resolve bug fixed
...
Fix : #37545
(cherry picked from commit e67eb5ca36 )
2020-05-11 10:50:46 +02:00
6b0cfc87af
more clearer unexpected statement end error messages
...
(cherry picked from commit 5758d87f09 )
2020-05-11 10:50:46 +02:00