summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_compiler.cpp
Commit message (Collapse)AuthorAgeFilesLines
* GDScript: Fix regression with native signal not foundDanil Alexeev2023-08-021-32/+34
|
* Merge pull request #79880 from dalexeev/gds-fix-id-shadowing-belowYuri Sizov2023-07-311-156/+173
|\ | | | | | | GDScript: Fix bug with identifier shadowed below in current scope
| * GDScript: Fix bug with identifier shadowed below in current scopeDanil Alexeev2023-07-261-156/+173
| |
* | Merge pull request #78254 from dalexeev/gds-fix-property-group-name-conflictYuri Sizov2023-07-311-3/+4
|\ \ | |/ |/| | | GDScript: Fix conflict between property and group names
| * GDScript: Fix conflict between property and group namesDanil Alexeev2023-06-151-3/+4
| |
* | GDScript: solve `_populate_class_members()` cyclic dependency problemocean (they/them)2023-07-081-4/+9
| |
* | Merge pull request #77744 from dalexeev/gds-reset-block-locals-on-exitRémi Verschelde2023-06-211-7/+28
|\ \ | | | | | | | | | GDScript: Reset local variables on exit from block
| * | GDScript: Reset local variables on exit from blockDanil Alexeev2023-06-021-7/+28
| |/
* | Merge pull request #78389 from rune-scape/rune-match-stringnamesRémi Verschelde2023-06-191-22/+55
|\ \ | | | | | | | | | GDScript: Strings and StringNames match
| * | GDScript: Strings and StringNames matchrune-scape2023-06-141-22/+55
| |/
* / GDScript: Fix some bugs with static variables and functionsDanil Alexeev2023-06-161-51/+121
|/
* Add support for static variables in GDScriptGeorge Marques2023-04-271-17/+211
| | | | | | | | | | Which allows editable data associated with a particular class instead of the instance. Scripts with static variables are kept in memory indefinitely unless the `@static_unload` annotation is used or the `static_unload()` method is called on the GDScript. If the custom function `_static_init()` exists it will be called when the class is loaded, after the static variables are set.
* Merge pull request #72095 from anvilfolk/gd-docsYuri Sizov2023-04-261-72/+2
|\ | | | | Improve GDScript documentation generation & behavior
| * Improve and fix GDScript documentation generation & behaviorocean (they/them)2023-04-211-72/+2
| | | | | | | | | | | | Removes documentation generation (docgen) from the GDScript compiler to its own file. Adds support for GDScript enums and signal parameters and quite a few other assorted fixes and improvements.
* | Merge pull request #75885 from AThousandShips/compound_fixRémi Verschelde2023-04-251-11/+1
|\ \ | | | | | | | | | [GDScript] Fix incorrect compound assignment
| * | [GDScript] Fix incorrect compound assignmentNinni Pipping2023-04-141-11/+1
| |/ | | | | | | | | | | Reverts in-place compound assignments Added test to ensure correctness
* / Fix edge cases of object lifetime when signals involvedPedro J. Estébanez2023-04-111-0/+3
|/
* Merge pull request #72056 from resistor/masterYuri Sizov2023-03-201-1/+11
|\ | | | | [GDScript] Perform update-and-assign operations in place when possible.
| * [GDScript] Perform update-and-assign operations in place when possible.Owen Anderson2023-01-251-1/+11
| | | | | | | | | | | | This turns two bytecode operations into one by using the assignment destination directly as the output of the binary operator. This manifests in operations like `+=`.
* | GDScript: Fix checking if a call is awaited in compilerDmitrii Maganov2023-03-011-5/+7
| |
* | Merge pull request #73915 from vonagam/fix-conversions-from-native-memberRémi Verschelde2023-02-261-1/+1
|\ \ | | | | | | | | | GDScript: Fix conversions from native members accessed by identifier
| * | GDScript: Fix conversions from native members accessed by identifierDmitrii Maganov2023-02-251-1/+1
| | |
* | | Merge pull request #73964 from vonagam/fix-coroutine-compiler-typeRémi Verschelde2023-02-261-1/+1
|\ \ \ | | | | | | | | | | | | GDScript: Fix address type for coroutine results
| * | | GDScript: Fix address type for coroutine resultsDmitrii Maganov2023-02-261-1/+1
| | | |
* | | | Merge pull request #73899 from vnen/gdscript-init-defaults-beforehandRémi Verschelde2023-02-261-10/+26
|\ \ \ \ | |/ / / |/| | | | | | | GDScript: Initialize all defaults beforehand in implicit constructor
| * | | GDScript: Initialize all defaults beforehand in implicit constructorGeorge Marques2023-02-241-10/+26
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Set all the default values for typed variables before actually trying to initialize them, including `@onready` ones. This ensures that if validated calls are being used there will be a value of the correct type, even if the resolution is done out of order or deferred because of `@onready`.
* / / Revert "GDScript: Fix groups and categories been seen as members"George Marques2023-02-251-5/+1
|/ / | | | | | | | | | | | | This reverts commit 6f2a8434c675b3df2aceca4e5200aaf799eeb2bd. The commit introduces a bug where it creates spurious entries for member information.
* | GDScript: Fix groups and categories been seen as membersGeorge Marques2023-02-241-1/+5
| |
* | GDScript: Fix setting native type with script inheritanceGeorge Marques2023-02-211-6/+7
| | | | | | | | | | | | | | Sometimes the inheritance tree is compiled out of order and the base don't have yet a native type set. This is now changed to not rely on the base script but use the native type set in the datatype, which is already resolved by the analyzer.
* | GDScript: Rework type checkDmitrii Maganov2023-02-171-36/+24
| |
* | Add return type for GDScript gettersocean (they/them)2023-02-151-1/+1
| |
* | Revert "Remove script class checks when getting function signature"Rémi Verschelde2023-02-071-1/+2
| | | | | | | | | | | | This reverts commit 0fef203b1f39c3373f9f25b8e75e75f6b03f7c88. This introduced some other issues, as discussed in #72144.
* | Remove script class checks when getting function signatureAdam Scott2023-02-071-2/+1
| |
* | GDScript: Allow void functions to return calls to other void functionsGeorge Marques2023-01-311-1/+6
| |
* | GDScript: Fix issues with typed arraysDmitrii Maganov2023-01-311-27/+0
| |
* | GDScript: Fix vararg method calls with exact argumentsDmitrii Maganov2023-01-301-3/+7
|/
* Merge pull request #70948 from vnen/gdscript-ptr-method-name-in-debugGeorge Marques2023-01-231-3/+3
|\
| * GDScript: Add names for disassembling function pointersGeorge Marques2023-01-231-3/+3
| | | | | | | | | | | | When instructions use function pointers, it's not possible to retrieve their original names in the disassembly. This stores the names in vectors (in debug builds) so they can be shown.
* | GDScript: Remove function of `continue` for match statementGeorge Marques2023-01-221-10/+1
|/ | | | | | The keyword is confusing and rarely is used in the intended way. It is removed now in favor of a future feature (pattern guards) to avoid breaking compatibility later.
* Fix cyclic reference errors while reducing identifiers.Adam Scott2023-01-151-1/+1
| | | | Co-authored-by: Dmitrii Maganov <vonagam@gmail.com>
* Merge pull request #70987 from vonagam/fix-parameter-conversion-assignGeorge Marques2023-01-121-1/+1
|\
| * GDScript: Fix missing conversion for default argument valuesDmitrii Maganov2023-01-061-1/+1
| |
* | Merge pull request #69590 from anvilfolk/enumsRémi Verschelde2023-01-091-1/+1
|\ \ | | | | | | | | | GDScript enum fixes & refactor
| * | Assorted enum and native type fixesocean (they/them)2023-01-091-1/+1
| |/
* / GDScript: Don't use the NIL address to hold return value of functionsGeorge Marques2023-01-091-22/+24
|/ | | | | This prevents that the NIL address is filled with another value, which causes problems for some instructions that read from NIL.
* GDScript: Fix array as default value for parameterDmitrii Maganov2023-01-061-1/+12
|
* Unify typing of variables, constants and parameters in GDScriptDmitrii Maganov2023-01-061-3/+3
|
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* Merge pull request #70702 from vnen/gdscript-error-on-assign-voidRémi Verschelde2023-01-031-14/+14
|\ | | | | | | GDScript: Error when assigning return value of void function
| * GDScript: Error when assigning return value of void functionGeorge Marques2022-12-301-14/+14
| | | | | | | | | | This also makes built-in method calls empty the return value when the method is void, to avoid keeping returning a garbage value in such case.