Age | Commit message (Collapse) | Author |
|
Found via `codespell`
|
|
GDScript duplicate arguments bug fixed
|
|
fix: Classes can't have pass
|
|
there was a logic error in for loop range argument that
check if all of the argument were constants, fixed
|
|
|
|
|
|
- Renames PackedIntArray to PackedInt32Array.
- Renames PackedFloatArray to PackedFloat32Array.
- Adds PackedInt64Array and PackedFloat64Array.
- Renames Variant::REAL to Variant::FLOAT for consistency.
Packed arrays are for storing large amount of data and creating stuff like
meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of
memory. That said, many users requested the ability to have 64 bits packed
arrays for their games, so this is just an optional added type.
For Variant, the float datatype is always 64 bits, and exposed as `float`.
We still have `real_t` which is the datatype that can change from 32 to 64
bits depending on a compile flag (not entirely working right now, but that's
the idea). It affects math related datatypes and code only.
Neither Variant nor PackedArray make use of real_t, which is only intended
for math precision, so the term is removed from there to keep only float.
|
|
This attribute is now part of the standard we target so we no longer
need compiler-specific hacks.
Also enables -Wimplicit-fallthrough for Clang now that we can properly
support it. It's already on by default for GCC's -Wextra.
Fixes new warnings raised by Clang's -Wimplicit-fallthrough.
|
|
objects and made them default.
|
|
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
|
|
|
|
Those keywords were deprecated for 3.1 in #22087.
Also fix token name for `TK_REMOTE`, should be "remote" like the keyword.
|
|
Disabled re-assigning 'self'
|
|
|
|
lookup was always done on top level script instead of advancing to subclass each time.
this commit changes the lookup to always be at last found subclass
|
|
|
|
Needed because otherwise the certain type operations (such as type
casting) used as a function argument might become unresolved on release,
causing a compilation failure.
Fix #28680
|
|
This ensures that a value without type won't be wrongly assigned to a
typed variable when the types mismatch.
|
|
Avoids the user breaking things by creating a "script" variable with
something else, effectively overwriting the "script" slot on Object.
|
|
|
|
Fix #26556
|
|
GDScript: Allow copy constructor for built-in types
|
|
Those are implicitly defined in Variant.
|
|
This makes the error message clearer as it might be used to call
functions with side effects.
|
|
This is needed in a all local variables with assigment to properly set
the typed operation.
Fix #34928
|
|
GDScript: enable type checks on release mode
|
|
Also make builtin GDScript functions report return type as Variant in
release so type is converted when needed.
|
|
Properly sets the type of the identifier for the local variable
that is stored in the assignment operation. This makes sure that the
compiler is aware of typing for local variables when they are
initialized with the declaration.
|
|
Fixes #34689
|
|
Happy new year to the wonderful Godot community!
We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.
Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
|
|
|
|
Make error when accidentially redeclaring a variable's type clearer
|
|
Fixes #32370
|
|
|
|
|
|
Allow mixed tabs and spaces when indentation does not depend on tab size
|
|
(hopefully) Closes #30937, fixes #32612
|
|
Fix wrong counting of function argument usage
|
|
This makes sure that the classes internally represented with an
underscore (_) prefix, such as singletons, are still properly checked
for inheritance in the ClassDB.
|
|
There's no need to subtract 1 from the assignment usages because it's
not incremented anywhere else.
Also put back the assignment with operators because they should not
count as usage if the argument is on the left side.
|
|
|
|
Some situations caused the parser node type to not being update when
trying to resolve the type, returning invalid data and breaking the
parsing when it shouldn't. This patch fix the behavior.
|
|
|
|
Fix misc. source comment typos
|
|
Found using `codespell -q 3 -S ./thirdparty,*.po -L ang,ba,cas,dof,doubleclick,fave,hist,leapyear,lod,nd,numer,ois,paket,seeked,sinc,switchs,te,uint -D ~/Projects/codespell/codespell_lib/data/dictionary.txt `
|
|
Fix uninitialized arrays and dictionaries retaining value
|
|
Fix const deceleration for inherited scripts above immediate parent
|
|
Produce an error when a class has the same name as a Singleton
|
|
Before this patch, assert() only took the condition to assert on:
assert(item_data)
Now, it can optionally take a string that will be printed upon failure:
assert(item_data, item_name + " has no item data in ItemDatabase")
This makes it easier to immediately see what the issue is by being
able to write informative failure messages.
Thanks to @wiped1 for sharing their patch, upon which this is based.
Closes #17082
|
|
immediate parent.
|