about summary refs log tree commit diff
path: root/src/rustc/middle
AgeCommit message (Collapse)AuthorLines
2012-10-05rustc: Thread a self type through trans_impl; fix cross-crate trait issuePatrick Walton-10/+27
2012-10-05rustc: Translate default methods on traits for each impl in which they're ↵Patrick Walton-5/+27
used instead of once. This is a step on the way to default methods.
2012-10-05Remove uses of mutable ref mode.Tim Chevalier-12/+11
It's still in the compiler right now, but warned about
2012-10-05rustc: Implement simple uses of &traitPatrick Walton-69/+168
2012-10-05Revert "wip"Tim Chevalier-28/+59
This reverts commit ca49fd402af8e7bf613c43e996274b5a017958d2.
2012-10-05wipTim Chevalier-59/+28
2012-10-05Demode some code using by-mutbl-ref; warn about by-mutbl-refTim Chevalier-1/+3
The parser now warns about use of mutbl-ref mode, though it's kind of a lie since this commit doesn't remove support for the mode. Changed move_val_init to have stage0 and stage1/2 versions, the latter of which is demoded. Changed the type that the typechecker expects the move_val_init intrinsic to have. After this is pushed, I can make a new snapshot, which will remove the need for the stage0 versions.
2012-10-05rustc: Implement simple trait inheritance.Patrick Walton-35/+110
Generic trait inheritance, cross-crate trait inheritance, and vtable-based trait inheritance don't work yet.
2012-10-04Remove arg vectors from main functions. Stop supporting them.Brian Anderson-20/+6
2012-10-03rustc: Fix ICE when de-exporting rtPatrick Walton-3/+8
2012-10-03rustc: Unbreak old-style boxed traitsPatrick Walton-5/+4
2012-10-03rustc: Implement "@Foo as @Bar" for boxed traitsPatrick Walton-31/+89
2012-10-03Change default mode for fns to be by-copy, except for fn&Tim Chevalier-6/+9
2012-10-03Revert "rustc: Don't error out early when constructing a boxed trait."Tim Chevalier-35/+20
This reverts commit 5e7ff924b5931bb90f381d2bf5936616224d4e85.
2012-10-02rustc: Only allow imports marked with "pub" to be imported from other modulesPatrick Walton-4/+19
2012-10-02rustc: Add a side table for legacy boxed traits, not filled in.Patrick Walton-2/+12
This is part of the transition to "@int as @Trait".
2012-10-02rustc: Don't error out early when constructing a boxed trait.Patrick Walton-20/+35
This improves error messages a bit and helps pave the way for "@int as @Trait" (as opposed to "int as @Trait").
2012-10-02Removing explicit uses of + modeTim Chevalier-2/+6
This removes most explicit uses of the + argument mode. Pending a snapshot, I had to remove the forbid(deprecated_modes) pragma from a bunch of files. I'll put it back! + mode still has to be used in a few places for functions that get moved (see task.rs) The changes outside core and std are due to the to_bytes trait and making the compiler (with legacy modes on) agree with the libraries (with legacy modes off) about modes.
2012-10-02libstd: Switch off legacy modes in both core and std.Patrick Walton-25/+25
2012-10-02Don't warn about non-camel-case types by defaultBrian Anderson-1/+1
2012-10-01In lint, don't complain about infer mode if legacy modes aren't enabledTim Chevalier-9/+12
2012-10-01Move over to calling ptr::addr_ofTim Chevalier-7/+7
Everything should now call ptr::addr_of instead of ptr::p2::addr_of. Only the pipes macro code when compiled by stage0 will call ptr::p2::addr_of. Needs a snapshot to get rid of that.
2012-09-30rustc: uniquely mangle expr_fn namesErick Tryzelaar-1/+1
two closures in the same function body can end up having the same mangled name. This small patch uses gensym to uniquely name each closure body so there won't be conflicts.
2012-09-30When a vec/str bounds check fails, include the bad index and the length of ↵Gareth Daniel Smith-1/+21
the str/vec in the fail message.
2012-09-28Demode iter::foldl and friendsTim Chevalier-10/+10
2012-09-28Demoding in iter: any, all, map_to_vec, flat_map_to_vec, filter_to_vecTim Chevalier-6/+6
2012-09-28rename iter2 to each2, make it follow iterator protocolNiko Matsakis-18/+21
2012-09-28demode vecNiko Matsakis-49/+51
2012-09-27core: More option demodingBrian Anderson-33/+33
2012-09-27rustc: Make enum export visibility inherit properlyPatrick Walton-5/+10
2012-09-26core: Replace map/map_default with map_ref/map_default_refBrian Anderson-27/+27
2012-09-26Remove spurious by-ref argument to destructorsTim Chevalier-14/+12
Destructors were internally declared with an extra (hidden) nil-typed argument that was passed in by-ref mode. This was causing spurious mode warnings. Deleted it. Also some misc. cleanup because I couldn't help myself.
2012-09-26std: Demode more of list and treemapBrian Anderson-1/+1
2012-09-26Demode vec::push (and convert to method)Niko Matsakis-129/+129
2012-09-26replace resolve::Atom with ast::ident.Erick Tryzelaar-142/+129
2012-09-26turn ast::ident into a structErick Tryzelaar-8/+9
This will help with the auto_serialize2 migration. We have to change ident from a type alias to uint into a unique type. We need to use a struct instead of a "enum ident = token::str_num" because structs support constants, but newtypes do not.
2012-09-26Allow hashmaps to infer their typesErick Tryzelaar-14/+14
2012-09-26Make impl of Add for @[] publicNiko Matsakis-0/+4
It's not clear that impls should have to be public to be used from outside the crate; in particular, I don't know whether they have to be public to be used from other modules within the same crate.
2012-09-25Demode iter-traitTim Chevalier-17/+17
2012-09-25Fix long lineTim Chevalier-1/+1
2012-09-25Demode core::resultBrian Anderson-6/+6
2012-09-25Check more things with deprecated_modesBrian Anderson-31/+96
2012-09-25rustc: Reduce shape.rs to the bare minimum needed to not trigger bugsPatrick Walton-163/+6
2012-09-25rustc: Remove most of the code that generates shapesPatrick Walton-376/+0
2012-09-25rustc: Stop generating shape tablesPatrick Walton-59/+4
2012-09-25Respect privacy qualifiers on view items, add to import resolutions.Graydon Hoare-54/+76
2012-09-25Change method res to try autoref more often. Fixes #3585.Niko Matsakis-53/+11
2012-09-25rustc: Move generally useful functions out of shape.rs in preparation for ↵Patrick Walton-143/+149
its destruction
2012-09-25rustc: Fix calls to the logging function when the must_cast flag is true; ↵Patrick Walton-13/+49
stop using shape code for logging
2012-09-25use + mode for (almost) everything when not using legacy modesNiko Matsakis-9/+36