diff options
| author | bors <bors@rust-lang.org> | 2013-02-19 12:24:30 -0800 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2013-02-19 12:24:30 -0800 |
| commit | 1f956fc3b2ad6f1b8db3d580a409fb5636c8297f (patch) | |
| tree | 432dbd8dd2a3a2e0434cd4a9fc5c66e8718776ad /src/libsyntax/parse/parser.rs | |
| parent | a782efc4f16fed52f1f82af5869bfb5285bbc3f4 (diff) | |
| parent | 68746cd4fb93e95a393c539abc65b93ed5eecdb5 (diff) | |
| download | rust-1f956fc3b2ad6f1b8db3d580a409fb5636c8297f.tar.gz rust-1f956fc3b2ad6f1b8db3d580a409fb5636c8297f.zip | |
auto merge of #4999 : erickt/rust/incoming, r=brson
This patch series is doing a couple things with the ultimate goal of removing `#[allow(vecs_implicitly_copyable)]`, although I'm not quite there yet. The main change is passing around `@~str`s in most places, and using `ref`s in others. As far as I could tell, there are no performance changes with these patches, and all the tests pass on my mac.
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index e5b3024d3dc..644d6ed5189 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -3267,11 +3267,11 @@ pub impl Parser { // on the mod, then we'll go and suck in another file and merge // its contents match ::attr::first_attr_value_str_by_name(outer_attrs, ~"merge") { - Some(ref path) => { + Some(path) => { let prefix = Path( self.sess.cm.span_to_filename(copy self.span)); let prefix = prefix.dir_path(); - let path = Path((*path)); + let path = Path(copy *path); let (new_mod_item, new_attrs) = self.eval_src_mod_from_path( prefix, path, ~[], id_span); @@ -3300,7 +3300,7 @@ pub impl Parser { let file_path = match ::attr::first_attr_value_str_by_name( attrs, ~"path") { - Some(ref d) => (*d), + Some(d) => copy *d, None => copy *default_path }; self.mod_path_stack.push(file_path) @@ -3320,10 +3320,10 @@ pub impl Parser { let default_path = self.sess.interner.get(id) + ~".rs"; let file_path = match ::attr::first_attr_value_str_by_name( outer_attrs, ~"path") { - Some(ref d) => { - let path = Path(*d); + Some(d) => { + let path = Path(copy *d); if !path.is_absolute { - mod_path.push(*d) + mod_path.push(copy *d) } else { path } @@ -3357,7 +3357,7 @@ pub impl Parser { fn cdir_path_opt(default: ~str, attrs: ~[ast::attribute]) -> ~str { match ::attr::first_attr_value_str_by_name(attrs, ~"path") { - Some(ref d) => (*d), + Some(d) => copy *d, None => default } } |
