summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_parser.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge pull request #43500 from AndreaCatania/gds_fixesRémi Verschelde2020-11-271-1/+3
|\ \ \ \ | | | | | | | | | | Fixes crash when parse_expression returns nullptr.
| * | | | Fixes crash when returns .Andrea Catania2020-11-131-1/+3
| |/ / /
* | | | Merge pull request #43226 from mateosss/unreachable-prop-crashGeorge Marques2020-11-271-1/+5
|\ \ \ \ | |/ / / |/| | | Fix crash due to unreachable code in properties
| * | | Fix crash due to unreachable code in propertiesMateo de Mayo2020-10-301-1/+5
| |/ /
* | | Fix completion for built-in load functionGustav2020-11-101-19/+21
| | |
* | | Variant: Rename Type::_RID to Type::RIDRémi Verschelde2020-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The underscore prefix was used to avoid the conflict between the `RID` class name and the matching enum value in `Variant::Type`. This can be fixed differently by prefixing uses of the `RID` class in `Variant` with the scope resolution operator, as done already for `AABB`.
* | | Refactored variant constructor logicreduz2020-11-091-2/+6
| | |
* | | Reorganized core/ directory, it was too fatty alreadyreduz2020-11-071-2/+2
|/ / | | | | | | | | | | -Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
* / Fix typos with codespellRémi Verschelde2020-09-181-3/+3
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 ```
* [Complex Test Layouts] Change `String` to use UTF-32 encoding on all platforms.bruvzg2020-09-031-1/+1
|
* Change GDScript compiler to use codegen abstractionGeorge Marques2020-09-011-1/+12
|
* GDScript: Allow "extends" to be used inside inner classGeorge Marques2020-09-011-0/+8
|
* GDScript: Allow "self" to be used in class levelGeorge Marques2020-09-011-2/+2
|
* GDScript: Fix crash when parsing propertiesGeorge Marques2020-08-261-1/+1
|
* GDScript: Fix issues when deriving from other scriptsGeorge Marques2020-08-261-1/+0
|
* GDScript: Show error when function return type is missingGeorge Marques2020-08-191-0/+3
|
* GDScript: Fix signal parameters not respecting commasGeorge Marques2020-08-191-2/+9
|
* GDScript: Check duplicate keys in dictionaries and enumsGeorge Marques2020-08-191-1/+7
|
* GDScript: Allow preload() to be used with constant expressionsGeorge Marques2020-08-191-23/+0
|
* GDScript: Allow keywords to be used in $ notationGeorge Marques2020-08-191-3/+6
|
* GDScript: Allow enum values to be set to constant expressionsGeorge Marques2020-08-181-12/+10
| | | | Also allow them to access previous values wihout referencing the enum.
* GDScript: Allow empty files to be valid scriptsGeorge Marques2020-08-171-6/+0
|
* GDScript: Fix crash when superclass file is non-existentGeorge Marques2020-08-171-3/+3
| | | | Incidentally, allow EOF to be an end of statement.
* GDScript: Fix editor crash when writing @tool annotationGeorge Marques2020-08-171-10/+12
|
* Merge pull request #41104 from vnen/gdscript-assignment-tidyGeorge Marques2020-08-121-1/+11
|\ | | | | Tidy up assignment operator check
| * GDScript: Tidy up assignment operator checkGeorge Marques2020-08-081-1/+11
| | | | | | | | | | The operator is already gathered by the parser, no need to do it again in the analyzer.
* | Merge pull request #41055 from snichols/null-callee-fixRémi Verschelde2020-08-111-2/+8
|\ \ | | | | | | Fix crash with null callee
| * | Adding error message for empty grouping expressionStephen Nichols2020-08-051-1/+5
| | |
| * | Fixing null callee crash.Stephen Nichols2020-08-051-1/+3
| |/
* / [GDScript] Add static HashMap cleanup.bruvzg2020-08-011-0/+4
|/
* Wrap up GDScript 2.0 base implementationGeorge Marques2020-07-221-44/+64
|
* Reintroduce code completionGeorge Marques2020-07-201-11/+197
|
* Reenable GDScript LSP serverGeorge Marques2020-07-201-0/+2
|
* Added support for enums to be used as types in GDScriptGeorge Marques2020-07-201-3/+7
|
* Add warning checks in GDScript analyzerGeorge Marques2020-07-201-1/+157
| | | | Reenable checking those when validating code.
* Add new GDScript type checkerGeorge Marques2020-07-201-0/+2
|
* Add better local variable detection in GDScript parserGeorge Marques2020-07-201-34/+233
| | | | | Also store Variant operator to avoid needing to do it repeatedly in later compiling stages.
* Add support for propertiesGeorge Marques2020-07-201-2/+206
|
* New GDScript tokenizer and parserGeorge Marques2020-07-201-8254/+2413
| | | | | | | | | | Sometimes to fix something you have to break it first. This get GDScript mostly working with the new tokenizer and parser but a lot of things isn't working yet. It compiles and it's usable, and that should be enough for now. Don't worry: other huge commits will come after this.
* Fix: editor crash on super constructor calledThakee Nathees2020-07-041-0/+3
| | | | Fix: #39909
* Merge pull request #39275 from ThakeeNathees/shadowed-warning-for-loop-counterRémi Verschelde2020-06-161-0/+7
|\ | | | | Added shadowed var warning for `for` loop counter
| * shodowed var warning for `for` loop counterThakee Nathees2020-06-041-0/+7
| | | | | | | | Fix: #39268
* | Merge pull request #39314 from ThakeeNathees/debugger-incorrect-line-fixRémi Verschelde2020-06-161-0/+2
|\ \ | | | | | | GDScript debugger stepping to incorrect line fix
| * | Debugger stepping to incorrect line fixThakee Nathees2020-06-051-0/+2
| |/ | | | | | | Fix: #39296
* | Merge pull request #39301 from Calinou/fix-argument-parameter-confusionRémi Verschelde2020-06-051-2/+2
|\ \ | | | | | | Tweak the GDScript error message about passed argument type mismatch
| * | Tweak the GDScript error message about passed argument type mismatchHugo Locurcio2020-06-041-2/+2
| |/ | | | | | | | | | | This makes it less confusing. This closes https://github.com/godotengine/godot-proposals/issues/670.
* / predefined var check for `for` loop counterThakee Nathees2020-06-041-0/+9
|/
* Merge pull request #33689 from jbuck3/signal-errorRémi Verschelde2020-05-211-0/+49
|\ | | | | Trigger an error when trying to define a preexisting signal in GDScript
| * Trigger an error when trying to define a preexisting signal in GDScriptJames Buck2019-11-251-0/+49
| | | | | | | | | | | | 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.
* | gdscript_parser: Fix "unreachable code" false positive for loopsTan Wang Leng2020-05-161-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.