GDScript: Remove unused switch
, case
and do
CF keywords
They had been reserved for future implementation, but we now have the `match` CF keyword which does the same and more. According to @reduz `do` was even added by mistake when copying from the shader language parser, it was never intended to add support for `do`... `while` loops, as the syntax would be awkward in GDScript, and the added sugar is not worth it. Fixes #25787.
This commit is contained in:
parent
29fd942dd6
commit
d35003d92a
5 changed files with 1 additions and 20 deletions
|
@ -359,9 +359,6 @@ static void _parser_show_block(const GDScriptParser::BlockNode *p_block, int p_i
|
|||
} break;
|
||||
case GDScriptParser::ControlFlowNode::CF_MATCH: {
|
||||
// FIXME: Implement
|
||||
} break;
|
||||
case GDScriptParser::ControlFlowNode::CF_SWITCH: {
|
||||
|
||||
} break;
|
||||
case GDScriptParser::ControlFlowNode::CF_CONTINUE: {
|
||||
|
||||
|
|
|
@ -1507,9 +1507,6 @@ Error GDScriptCompiler::_parse_block(CodeGen &codegen, const GDScriptParser::Blo
|
|||
|
||||
codegen.opcodes.write[break_addr + 1] = codegen.opcodes.size();
|
||||
|
||||
} break;
|
||||
case GDScriptParser::ControlFlowNode::CF_SWITCH: {
|
||||
|
||||
} break;
|
||||
case GDScriptParser::ControlFlowNode::CF_BREAK: {
|
||||
|
||||
|
|
|
@ -445,7 +445,6 @@ public:
|
|||
CF_IF,
|
||||
CF_FOR,
|
||||
CF_WHILE,
|
||||
CF_SWITCH,
|
||||
CF_BREAK,
|
||||
CF_CONTINUE,
|
||||
CF_RETURN,
|
||||
|
|
|
@ -80,10 +80,7 @@ const char *GDScriptTokenizer::token_names[TK_MAX] = {
|
|||
"elif",
|
||||
"else",
|
||||
"for",
|
||||
"do",
|
||||
"while",
|
||||
"switch (reserved)",
|
||||
"case (reserved)",
|
||||
"break",
|
||||
"continue",
|
||||
"pass",
|
||||
|
@ -224,9 +221,6 @@ static const _kws _keyword_list[] = {
|
|||
{ GDScriptTokenizer::TK_CF_ELSE, "else" },
|
||||
{ GDScriptTokenizer::TK_CF_FOR, "for" },
|
||||
{ GDScriptTokenizer::TK_CF_WHILE, "while" },
|
||||
{ GDScriptTokenizer::TK_CF_DO, "do" },
|
||||
{ GDScriptTokenizer::TK_CF_SWITCH, "switch" },
|
||||
{ GDScriptTokenizer::TK_CF_CASE, "case" },
|
||||
{ GDScriptTokenizer::TK_CF_BREAK, "break" },
|
||||
{ GDScriptTokenizer::TK_CF_CONTINUE, "continue" },
|
||||
{ GDScriptTokenizer::TK_CF_RETURN, "return" },
|
||||
|
@ -291,9 +285,6 @@ bool GDScriptTokenizer::is_token_literal(int p_offset, bool variable_safe) const
|
|||
case TK_CF_ELSE:
|
||||
case TK_CF_FOR:
|
||||
case TK_CF_WHILE:
|
||||
case TK_CF_DO:
|
||||
case TK_CF_SWITCH:
|
||||
case TK_CF_CASE:
|
||||
case TK_CF_BREAK:
|
||||
case TK_CF_CONTINUE:
|
||||
case TK_CF_RETURN:
|
||||
|
|
|
@ -86,10 +86,7 @@ public:
|
|||
TK_CF_ELIF,
|
||||
TK_CF_ELSE,
|
||||
TK_CF_FOR,
|
||||
TK_CF_DO,
|
||||
TK_CF_WHILE,
|
||||
TK_CF_SWITCH,
|
||||
TK_CF_CASE,
|
||||
TK_CF_BREAK,
|
||||
TK_CF_CONTINUE,
|
||||
TK_CF_PASS,
|
||||
|
@ -118,7 +115,7 @@ public:
|
|||
TK_PR_REMOTE,
|
||||
TK_PR_SYNC,
|
||||
TK_PR_MASTER,
|
||||
TK_PR_SLAVE,
|
||||
TK_PR_SLAVE, // Deprecated by TK_PR_PUPPET, to remove in 4.0
|
||||
TK_PR_PUPPET,
|
||||
TK_PR_REMOTESYNC,
|
||||
TK_PR_MASTERSYNC,
|
||||
|
|
Loading…
Reference in a new issue