diff --git a/lib/irb/nesting_parser.rb b/lib/irb/nesting_parser.rb index 1e213b320..05ef152c9 100644 --- a/lib/irb/nesting_parser.rb +++ b/lib/irb/nesting_parser.rb @@ -75,7 +75,7 @@ def close_end_keyword_loc(node) end def close_closing_loc(node) - close_location(node.closing_loc) unless node.closing.nil? || node.closing.empty? + close_location(node.closing_loc) if node.closing_loc && !node.closing.empty? end def visit_for_node(node) @@ -220,7 +220,7 @@ def heredoc_string_like(node, type) if node.opening&.start_with?('<<') heredoc_open(node) # Heredoc closing contains trailing newline. We need to exclude it - close_location_start(node.closing_loc) unless node.closing.empty? + close_location_start(node.closing_loc) if node.closing_loc && !node.closing.empty? elsif node.opening open_location(node.location, type, node.opening) if node.closing && node.closing != '' @@ -283,7 +283,7 @@ def visit_call_node(node) if type open_location(node.opening_loc, type, node.opening) - close_location(node.closing_loc) unless node.closing.empty? + close_closing_loc(node) end end @@ -298,7 +298,7 @@ def visit_block_parameters_node(node) def visit_lambda_node(node) super open_location(node.opening_loc, :on_tlambeg, node.opening) - close_location(node.closing_loc) unless node.closing.empty? + close_closing_loc(node) end def visit_super_node(node)