Commit Graph

122 Commits

Author SHA1 Message Date
Niko Matsakis
737e115646 mode: reset mode on entry to fn body.
This is an interim fix to address the "Beware!" unsoundness.  I have a
more comprehensive rewrite of mode.rs in the pipeline.

r=pcwalton
2013-01-10 13:17:25 -08:00
Patrick Walton
2db3abddcd librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 22:02:35 -08:00
Patrick Walton
44ab00ee37 Revert "librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc"
This reverts commit a8d37af247.
2013-01-08 19:29:16 -08:00
Patrick Walton
a8d37af247 librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc 2013-01-08 19:27:57 -08:00
Patrick Walton
53f41f07ce librustc: Make vectors no longer implicitly copyable in rustc. r=graydon
~20% perf win for trans on -O0, with other minor improvements across the board.
No effect on -O2.
2013-01-07 14:17:36 -08:00
Patrick Walton
96e01a67c7 librustc: Convert some large structural records over to structs. rs=perf
No effect on compile-time performance.
2013-01-06 11:16:14 -08:00
Patrick Walton
57c599914a librustc: Terminate name searches at the nearest module scope for paths that contain at least two components. r=graydon 2012-12-27 10:02:54 -08:00
Patrick Walton
efb9b74718 librustc: Fix explicit self for objects in more cases. r=nmatsakis 2012-12-13 13:29:08 -08:00
Patrick Walton
4c2e4c37ce librustc: Make use statements crate-relative by default. r=brson 2012-12-13 13:05:22 -08:00
Brian Anderson
6047dd35bb Fix vtable calculations when translating static methods. Closes #4165 2012-12-12 17:14:39 -08:00
Tim Chevalier
0046ed9462 Remove un-needed code for obsolete classes
and rename "class" to "struct" everywhere possible (except local
vars, I was too lazy for that) -- that is why this commit is so
big.

No review, just dead code removal and renaming.

Closes #3515
2012-12-10 18:45:01 -08:00
Brian Anderson
e5e6d3c43d Long lines 2012-12-07 16:48:55 -08:00
Brian Anderson
e71081ec03 Merge pull request #4101 from brson/bound-default-methods
Call default methods on bound typarams more correctly
2012-12-07 15:10:57 -08:00
Graydon Hoare
00c856c0b1 Update license, add license boilerplate to most files. Remainder will follow. 2012-12-03 17:12:14 -08:00
Brian Anderson
05e51e6f7f Call default methods on bound typarams more correctly 2012-12-02 18:29:22 -08:00
Patrick Walton
54ae377ec2 librustc: Implement explicit @self and ~self for objects. r=nmatsakis 2012-11-30 19:39:01 -08:00
Patrick Walton
3afd6c3d79 librustc: Implement simple explicit self for objects. r=nmatsakis 2012-11-30 18:55:12 -08:00
Brian Anderson
78ee821154 Implement trait inheritance for bounded type parameters 2012-11-29 18:10:11 -08:00
Patrick Walton
a0617eae68 librustc: Eliminate most expressions of the form a.b() that are not method calls. rs=refactoring 2012-11-29 17:51:56 -08:00
Patrick Walton
de0268b693 librustc: Fix translation of cross-crate inline or generic methods with explicit self. rs=blocking-snapshot 2012-11-26 18:09:12 -08:00
Patrick Walton
32ad4ae4cd librustc: Require the #[derivable] attribute, remove the significance of "impl Foo : Bar;", and allow only a subset of methods in a trait to be derived. r=brson 2012-11-14 11:36:55 -08:00
Brian Anderson
69a8b4d8e2 Rename src/rustc to src/librustc. Use the driver crate 2012-11-07 13:53:39 -08:00