diff options
Diffstat (limited to 'src/comp/syntax/parse')
| -rw-r--r-- | src/comp/syntax/parse/eval.rs | 4 | ||||
| -rw-r--r-- | src/comp/syntax/parse/parser.rs | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/src/comp/syntax/parse/eval.rs b/src/comp/syntax/parse/eval.rs index ca7af9e273d..2530c794c94 100644 --- a/src/comp/syntax/parse/eval.rs +++ b/src/comp/syntax/parse/eval.rs @@ -79,7 +79,7 @@ fn parse_companion_mod(cx: ctx, prefix: str, suffix: option::t<str>) let first_item_outer_attrs = inner_attrs.next; let m0 = parse_mod_items(p0, token::EOF, first_item_outer_attrs); cx.sess.chpos = p0.reader.chpos; - cx.sess.byte_pos = p0.reader.pos; + cx.sess.byte_pos = cx.sess.byte_pos + p0.reader.pos; ret (m0.view_items, m0.items, inner_attrs.inner); } else { ret ([], [], []); @@ -117,7 +117,7 @@ fn eval_crate_directive(cx: ctx, cdir: @ast::crate_directive, prefix: str, ast::item_mod(m0), mod_attrs); // Thread defids, chpos and byte_pos through the parsers cx.sess.chpos = p0.reader.chpos; - cx.sess.byte_pos = p0.reader.pos; + cx.sess.byte_pos = cx.sess.byte_pos + p0.reader.pos; items += [i]; } ast::cdir_dir_mod(id, cdirs, attrs) { diff --git a/src/comp/syntax/parse/parser.rs b/src/comp/syntax/parse/parser.rs index eef02b5e4b7..4d8acc6fa44 100644 --- a/src/comp/syntax/parse/parser.rs +++ b/src/comp/syntax/parse/parser.rs @@ -2458,7 +2458,7 @@ fn parse_crate_from_source_file(input: str, cfg: ast::crate_cfg, let p = new_parser_from_file(sess, cfg, input, SOURCE_FILE); let r = parse_crate_mod(p, cfg); sess.chpos = p.reader.chpos; - sess.byte_pos = p.reader.pos; + sess.byte_pos = sess.byte_pos + p.reader.pos; ret r; } @@ -2468,7 +2468,7 @@ fn parse_expr_from_source_str(name: str, source: @str, cfg: ast::crate_cfg, let p = new_parser_from_source_str(sess, cfg, name, source); let r = parse_expr(p); sess.chpos = p.reader.chpos; - sess.byte_pos = p.reader.pos; + sess.byte_pos = sess.byte_pos + p.reader.pos; ret r; } @@ -2477,7 +2477,7 @@ fn parse_crate_from_source_str(name: str, source: @str, cfg: ast::crate_cfg, let p = new_parser_from_source_str(sess, cfg, name, source); let r = parse_crate_mod(p, cfg); sess.chpos = p.reader.chpos; - sess.byte_pos = p.reader.pos; + sess.byte_pos = sess.byte_pos + p.reader.pos; ret r; } @@ -2579,7 +2579,7 @@ fn parse_crate_from_crate_file(input: str, cfg: ast::crate_cfg, let first_cdir_attr = leading_attrs.next; let cdirs = parse_crate_directives(p, token::EOF, first_cdir_attr); sess.chpos = p.reader.chpos; - sess.byte_pos = p.reader.pos; + sess.byte_pos = sess.byte_pos + p.reader.pos; let cx = @{p: p, sess: sess, |
