aboutsummaryrefslogtreecommitdiffhomepage
path: root/parser.cpp
diff options
context:
space:
mode:
authorGravatar ridiculousfish <corydoras@ridiculousfish.com>2014-03-01 16:04:13 -0800
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2014-03-01 16:04:13 -0800
commitd232a0f9512d0e1b575235fdf4119a63353ecedd (patch)
tree8a0b4307dac8ec187a82fad92aafa65344bc6bfd /parser.cpp
parentbe33d3f2a44ad16358b614c9f47fdb8094b4e127 (diff)
Implement status -n (line number) with new parser
Diffstat (limited to 'parser.cpp')
-rw-r--r--parser.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/parser.cpp b/parser.cpp
index 0a4f004a..3febef09 100644
--- a/parser.cpp
+++ b/parser.cpp
@@ -928,6 +928,16 @@ const wchar_t *parser_t::is_function() const
int parser_t::get_lineno() const
{
+ if (parser_use_ast())
+ {
+ int lineno = -1;
+ if (! execution_contexts.empty())
+ {
+ lineno = execution_contexts.back()->get_current_line_number();
+ }
+ return lineno;
+ }
+
int lineno;
if (! current_tokenizer || ! tok_string(current_tokenizer))