about summary refs log tree commit diff
path: root/src/comp
diff options
context:
space:
mode:
authorKevin Atkinson <kevina@cs.utah.edu>2012-01-21 02:00:06 -0700
committerBrian Anderson <banderson@mozilla.com>2012-01-23 17:37:14 -0800
commit1625a4320d80d65814dbbef2a593ba340163bc9c (patch)
treed4a98d35fc21de4dffdd18e904bf7e5ad9903591 /src/comp
parent93e9600a94ab516b090a8e90233ec0694a9b3b23 (diff)
downloadrust-1625a4320d80d65814dbbef2a593ba340163bc9c.tar.gz
rust-1625a4320d80d65814dbbef2a593ba340163bc9c.zip
Revert "rustc: Exclude stdin from codemap files when lookup_pos".
Need a better fix, right now it is just causing even more confusion,
for example in issue #1448 and #1387.

This reverts commit 1e4de333740690357a8f58883c5c69bf58be1424.
Diffstat (limited to 'src/comp')
-rw-r--r--src/comp/syntax/codemap.rs8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/comp/syntax/codemap.rs b/src/comp/syntax/codemap.rs
index 367bd9a02fd..a8c76724b26 100644
--- a/src/comp/syntax/codemap.rs
+++ b/src/comp/syntax/codemap.rs
@@ -34,17 +34,15 @@ type lookup_fn = fn@(file_pos) -> uint;
 
 fn lookup_pos(map: codemap, pos: uint, lookup: lookup_fn) -> loc {
     let len = vec::len(map.files);
-    if len > 1u && map.files[len - 1u].name == "-" {
-        // the trailing "-" must be the core_macros inserted by expand_crate,
-        // exclude it from the targets to lookup
-        len = len - 1u;
-    }
     let a = 0u;
     let b = len;
     while b - a > 1u {
         let m = (a + b) / 2u;
         if lookup(map.files[m].start_pos) > pos { b = m; } else { a = m; }
     }
+    if (a >= len) {
+        ret { filename: "-", line: 0u, col: 0u };
+    }
     let f = map.files[a];
     a = 0u;
     b = vec::len(f.lines);