### Godot version

Beta 17, master

### System information

Windows 11

### Issue description

Godot gets a hard crash while attempting to code-complete for member `const` of a class.

### Steps to reproduce

```GDScript
enum E { V1 }

const e := E
```

And then type a `.` after the last `E`, which triggers code hints/auto-completion for subscripts based on `E` and causes a hard crash.

Does not happen for `var e := E.V1`.

### Minimal reproduction project

See above.
result.kind = GDScriptParser::DataType::NATIVE;
		result.native_type = SNAME("Object");
	} else if (GDScriptParser::get_builtin_type(first) < Variant::VARIANT_MAX) {
		
		if (p_type->type_chain.size() > 1) {
			push_error(R"(Built-in types don't contain nested types.)", p_type->type_chain[1]);
			return bad_type;
		}
		result.kind = GDScriptParser::DataType::BUILTIN;
		result.builtin_type = GDScriptParser::get_builtin_type(first);
		if (result.builtin_type == Variant::ARRAY) {
			GDScriptParser::DataType container_type = type_from_metatype(resolve_datatype(p_type->container_type));
			if (container_type.kind != GDScriptParser::DataType::VARIANT) {
				container_type.is_constant = false;
				result.set_container_element_type(container_type);
			}
		}
	} else if (class_exists(first)) {
		
		result.kind = GDScriptParser::DataType::NATIVE;
		result.native_type = first;
	} else if (ScriptServer::is_global_class(first)) {
		if (parser->script_path == ScriptServer::get_global_class_path(first)) {
			result = parser->head->get_datatype();
		} else {
			String path = ScriptServer::get_global_class_path(first);
			String ext = path.get_extension();
			if (ext == GDScriptLanguage::get_singleton()->get_extension()) {
				Ref<GDScriptParserRef> ref = get_parser_for(path);