diff libinterp/parse-tree/lex.h @ 16103:6434f70f0ee0

move input_line_number and current_input_column to lexical_feedback class * lex.h, lex.ll (input_line_number, current_input_column): Move global variables to lexical_feedback class. Change all uses. (reset_parser): Don't reset input_line_number or current_input_column. * oct-parse.yy (eval_string, parse_fcn_file): Don't protect input_line_number or current_input_column here. (parse_fcn_file): Protect lexer_flags prior to calling gobble_leading_whitespace. Use reset_parser to reset lexer_flags.
author John W. Eaton <jwe@octave.org>
date Mon, 25 Feb 2013 21:30:51 -0500
parents 679a54d274d9
children c8974e28da59
line wrap: on
line diff
--- a/libinterp/parse-tree/lex.h
+++ b/libinterp/parse-tree/lex.h
@@ -72,6 +72,7 @@
       looking_at_indirect_ref (false), parsing_class_method (false),
       maybe_classdef_get_set_method (false), parsing_classdef (false),
       quote_is_transpose (false), parser_end_of_input (false),
+      input_line_number (1), current_input_column (1),
       bracketflag (0), braceflag (0),
       looping (0), defining_func (0), looking_at_function_handle (0),
       looking_at_object_index (), parsed_function_name (),
@@ -97,6 +98,8 @@
       parsing_classdef (lf.parsing_classdef),
       quote_is_transpose (lf.quote_is_transpose),
       parser_end_of_input (lf.parser_end_of_input),
+      input_line_number (lf.input_line_number),
+      current_input_column (lf.current_input_column),
       bracketflag (lf.bracketflag),
       braceflag (lf.braceflag),
       looping (lf.looping),
@@ -127,6 +130,8 @@
         parsing_classdef = lf.parsing_classdef;
         quote_is_transpose = lf.quote_is_transpose;
         parser_end_of_input = lf.parser_end_of_input;
+        input_line_number = lf.input_line_number;
+        current_input_column = lf.current_input_column;
         bracketflag = lf.bracketflag;
         braceflag = lf.braceflag;
         looping = lf.looping;
@@ -205,6 +210,12 @@
   // TRUE means that we have encountered EOF on the input stream.
   bool parser_end_of_input;
 
+  // The current input line number.
+  int input_line_number;
+
+  // The column of the current token.
+  int current_input_column;
+
   // Square bracket level count.
   int bracketflag;