summary refs log tree commit diff
path: root/src/libsyntax/codemap.rs
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2012-06-07 20:12:05 -0700
committerPatrick Walton <pcwalton@mimiga.net>2012-06-07 20:12:05 -0700
commit847c5e4e9892ef56873ac52a552997267c4d385a (patch)
tree7b374454400211b9ac1fda8cb4cc1630d9cbba1e /src/libsyntax/codemap.rs
parent7ef825bb607c4e934c92bd0b73ecbc4c24f3286b (diff)
downloadrust-847c5e4e9892ef56873ac52a552997267c4d385a.tar.gz
rust-847c5e4e9892ef56873ac52a552997267c4d385a.zip
syntax: Remove a bunch of implicit copies
Diffstat (limited to 'src/libsyntax/codemap.rs')
-rw-r--r--src/libsyntax/codemap.rs12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/libsyntax/codemap.rs b/src/libsyntax/codemap.rs
index 0fa419cd4a9..97911f9d8b8 100644
--- a/src/libsyntax/codemap.rs
+++ b/src/libsyntax/codemap.rs
@@ -51,7 +51,7 @@ type loc = {file: filemap, line: uint, col: uint};
 
 fn new_codemap() -> codemap { @{files: dvec()} }
 
-fn new_filemap_w_substr(filename: filename, substr: file_substr,
+fn new_filemap_w_substr(+filename: filename, +substr: file_substr,
                         src: @str,
                         start_pos_ch: uint, start_pos_byte: uint)
    -> filemap {
@@ -60,7 +60,7 @@ fn new_filemap_w_substr(filename: filename, substr: file_substr,
           mut lines: [{ch: start_pos_ch, byte: start_pos_byte}]};
 }
 
-fn new_filemap(filename: filename, src: @str,
+fn new_filemap(+filename: filename, src: @str,
                start_pos_ch: uint, start_pos_byte: uint)
     -> filemap {
     ret new_filemap_w_substr(filename, fss_none, src,
@@ -123,14 +123,16 @@ fn lookup_char_pos_adj(map: codemap, pos: uint)
     let loc = lookup_char_pos(map, pos);
     alt (loc.file.substr) {
       fss_none {
-        {filename: loc.file.name, line: loc.line, col: loc.col,
+        {filename: /* FIXME bad */ copy loc.file.name,
+         line: loc.line,
+         col: loc.col,
          file: some(loc.file)}
       }
       fss_internal(sp) {
         lookup_char_pos_adj(map, sp.lo + (pos - loc.file.start_pos.ch))
       }
       fss_external(eloc) {
-        {filename: eloc.filename,
+        {filename: /* FIXME bad */ copy eloc.filename,
          line: eloc.line + loc.line - 1u,
          col: if loc.line == 1u {eloc.col + loc.col} else {loc.col},
          file: none}
@@ -176,7 +178,7 @@ type file_lines = {file: filemap, lines: [uint]};
 
 fn span_to_filename(sp: span, cm: codemap::codemap) -> filename {
     let lo = lookup_char_pos(cm, sp.lo);
-    ret lo.file.name;
+    ret /* FIXME bad */ copy lo.file.name;
 }
 
 fn span_to_lines(sp: span, cm: codemap::codemap) -> @file_lines {