From a9712294622381b9545ed393d68616819b5af26f Mon Sep 17 00:00:00 2001 From: S-H-GAMELINKS Date: Tue, 9 Jan 2024 00:29:06 +0900 Subject: [PATCH] Fixed return values for some node types in nd_st_key function --- parse.y | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/parse.y b/parse.y index a3a4346f5b..391cafffc7 100644 --- a/parse.y +++ b/parse.y @@ -14966,13 +14966,19 @@ nd_st_key(struct parser_params *p, NODE *node) case NODE_STR: return RNODE_STR(node)->nd_lit; case NODE_INTEGER: + return rb_node_integer_literal_val(node); case NODE_FLOAT: + return rb_node_float_literal_val(node); case NODE_RATIONAL: + return rb_node_rational_literal_val(node); case NODE_IMAGINARY: + return rb_node_imaginary_literal_val(node); case NODE_SYM: + return rb_node_sym_string_val(node); case NODE_LINE: + return rb_node_line_lineno_val(node); case NODE_FILE: - return (VALUE)node; + return rb_node_file_path_val(node); default: rb_bug("unexpected node: %s", ruby_node_name(nd_type(node))); UNREACHABLE_RETURN(0);