diff options
author | unknown <jonquin@gmail.com> | 2022-11-24 21:24:46 +0100 |
---|---|---|
committer | unknown <jonquin@gmail.com> | 2022-11-24 22:14:05 +0100 |
commit | 5fd382c2ab3a117c0d98690f9f1f84fbf9d27234 (patch) | |
tree | 3f279e323caa06f5fa8c13f579130f80f9679025 | |
parent | a16d3625c3b2e82c88cb29e897523aa53f78ec7c (diff) |
GDScript: Properly respect `int` type hint for `@export_range`
Fixes #69104.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
-rw-r--r-- | modules/gdscript/gdscript_parser.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/modules/gdscript/gdscript_parser.cpp b/modules/gdscript/gdscript_parser.cpp index 7f2f49f336..7074520a34 100644 --- a/modules/gdscript/gdscript_parser.cpp +++ b/modules/gdscript/gdscript_parser.cpp @@ -3740,6 +3740,12 @@ bool GDScriptParser::export_annotations(const AnnotationNode *p_annotation, Node // This is called after the analyzer is done finding the type, so this should be set here. DataType export_type = variable->get_datatype(); + if (p_annotation->name == SNAME("@export_range")) { + if (export_type.builtin_type == Variant::INT) { + variable->export_info.type = Variant::INT; + } + } + if (p_annotation->name == SNAME("@export")) { if (variable->datatype_specifier == nullptr && variable->initializer == nullptr) { push_error(R"(Cannot use simple "@export" annotation with variable without type or initializer, since type can't be inferred.)", p_annotation); |