# HG changeset patch # User John W. Eaton # Date 1632366816 14400 # Node ID c2c11605fa7aa37fab4e23a9d0191e6f3e860507 # Parent 501fe2c8a8800b9f4aad62d60c7d7da61bd622b1 save file position info in more parse tree elements * oct-parse.yy (base_parser::make_else_clause): Pass else_tok line and column info to tree_if_clause constructor. (base_parser::finish_function): Pass line and column info to tree_function_def constructor. diff -r 501fe2c8a880 -r c2c11605fa7a libinterp/parse-tree/oct-parse.yy --- a/libinterp/parse-tree/oct-parse.yy Wed Sep 22 23:09:12 2021 -0400 +++ b/libinterp/parse-tree/oct-parse.yy Wed Sep 22 23:13:36 2021 -0400 @@ -3542,6 +3542,8 @@ { maybe_warn_assign_as_truth_value (expr); + // Line and column will be set in finish_if_command. + tree_if_clause *t = new tree_if_clause (expr, list); return new tree_if_command_list (t); @@ -3604,10 +3606,13 @@ } tree_if_clause * - base_parser::make_else_clause (token */*else_tok*/, comment_list *lc, + base_parser::make_else_clause (token *else_tok, comment_list *lc, tree_statement_list *list) { - return new tree_if_clause (list, lc); + int l = else_tok->line (); + int c = else_tok->column (); + + return new tree_if_clause (list, lc, l, c); } tree_if_command_list * @@ -4154,7 +4159,7 @@ m_lexer.m_buffer_function_text = false; } - retval = new tree_function_def (fcn); + retval = new tree_function_def (fcn, l, c); } }