| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2013-12-26 | librustc: De-`@mut` the `freevar_map` | Patrick Walton | -2/+4 | |
| 2013-12-26 | libextra: Stop using `@mut MemWriter` in the EBML module | Patrick Walton | -12/+23 | |
| 2013-12-26 | librustc: De-`@mut` the vtable map | Patrick Walton | -4/+7 | |
| 2013-12-26 | librustc: De-`@mut` the capture map | Patrick Walton | -2/+6 | |
| 2013-12-26 | librustc: De-`@mut` `node_types` in the type context | Patrick Walton | -2/+4 | |
| 2013-12-26 | librustc: De-`@mut` the type cache in the type context | Patrick Walton | -2/+4 | |
| 2013-12-26 | librustc: De-`@mut` the adjustments table in the type context | Patrick Walton | -2/+6 | |
| 2013-12-26 | librustc: Remove `ty_param_defs` from the type context | Patrick Walton | -3/+9 | |
| 2013-12-26 | librustc: De-`@mut` the `node_type_substs` table | Patrick Walton | -2/+6 | |
| 2013-12-19 | Purge @-boxes from the reading half of EBML | Alex Crichton | -12/+12 | |
| Now that the metadata is an owned value with a lifetime of a borrowed byte slice, it's possible to have future optimizations where the metadata doesn't need to be copied around (very expensive operation). | ||||
| 2013-12-11 | Make 'self lifetime illegal. | Erik Price | -1/+1 | |
| Also remove all instances of 'self within the codebase. This fixes #10889. | ||||
| 2013-12-08 | Remove dead codes | Kiet Tran | -4/+0 | |
| 2013-12-01 | Box Block, fn_decl, variant and Ty in the AST, as they were inflating ↵ | Eduard Burtescu | -4/+4 | |
| critical enum sizes. | ||||
| 2013-11-28 | Register new snapshots | Alex Crichton | -2/+2 | |
| 2013-11-26 | auto merge of #10670 : eddyb/rust/node-u32, r=alexcrichton | bors | -3/+2 | |
| ### Rationale There is no reason to support more than 2³² nodes or names at this moment, as compiling something that big (even without considering the quadratic space usage of some analysis passes) would take at least **64GB**. Meanwhile, some can't (or barely can) compile rustc because it requires almost **1.5GB**. ### Potential problems Can someone confirm this doesn't affect metadata (de)serialization? I can't tell myself, I know nothing about it. ### Results Some structures have a size reduction of 25% to 50%: [before](https://gist.github.com/luqmana/3a82a51fa9c86d9191fa) - [after](https://gist.github.com/eddyb/5a75f8973d3d8018afd3). Sadly, there isn't a massive change in the memory used for compiling stage2 librustc (it doesn't go over **1.4GB** as [before](http://huonw.github.io/isrustfastyet/mem/), but I can barely see the difference). However, my own testcase (previously peaking at **1.6GB** in typeck) shows a reduction of **200**-**400MB**. | ||||
| 2013-11-27 | Shink NodeId, CrateNum, Name and Mrk down to 32 bits on x64. | Eduard Burtescu | -3/+2 | |
| 2013-11-26 | Clean up SmallVector use a bit | Steven Fackler | -10/+4 | |
| 2013-11-26 | Support multiple item macros | Steven Fackler | -2/+10 | |
| Closes #4375 | ||||
| 2013-11-26 | librustc: Remove non-procedure uses of `do` from librustc, librustdoc, | Patrick Walton | -136/+128 | |
| and librustpkg. | ||||
| 2013-11-19 | librustc: Change most uses of `&fn()` to `||`. | Patrick Walton | -4/+2 | |
| 2013-11-11 | Move std::rt::io to std::io | Alex Crichton | -3/+3 | |
| 2013-11-08 | Rename and modernize region enum names | Niko Matsakis | -11/+11 | |
| 2013-11-08 | Generalize AST and ty::Generics to accept multiple lifetimes. | Niko Matsakis | -15/+38 | |
| 2013-10-24 | Remove std::io from ebml | Alex Crichton | -14/+16 | |
| 2013-10-22 | libsyntax/librustc: Allow specifying mut on by-value self. | Luqman Aden | -1/+1 | |
| 2013-10-22 | Drop the '2' suffix from logging macros | Alex Crichton | -15/+15 | |
| Who doesn't like a massive renaming? | ||||
| 2013-10-03 | Rewrite lint passes with less visitor cruft | Alex Crichton | -2/+2 | |
| This purges about 500 lines of visitor cruft from lint passes. All lints are handled in a much more sane way at this point. The other huge bonus of this commit is that there are no more @-boxes in the lint passes, fixing the 500MB memory regression seen when the lint passes were refactored. Closes #8589 | ||||
| 2013-09-30 | rustc: Remove usage of fmt! | Alex Crichton | -18/+18 | |
| 2013-09-23 | librustc: Change the ID visitor to use traits instead of garbage-collected ↵ | Patrick Walton | -16/+31 | |
| functions. | ||||
| 2013-09-23 | librustc: Change fold to use traits instead of `@fn`. | Patrick Walton | -29/+48 | |
| 2013-09-11 | Properly encode/decode structural variants. | SiegeLord | -2/+2 | |
| 2013-09-10 | Delay assignment of node ids until after expansion. Ensures that each AST node | Niko Matsakis | -4/+4 | |
| has a unique id. Fixes numerous bugs in macro expansion and deriving. Add two representative tests. Fixes #7971 Fixes #6304 Fixes #8367 Fixes #8754 Fixes #8852 Fixes #2543 Fixes #7654 | ||||
| 2013-09-03 | Modernized a few more types in syntax::ast | Marvin Löbel | -58/+58 | |
| 2013-09-02 | Renamed syntax::ast::ident -> Ident | Marvin Löbel | -2/+2 | |
| 2013-09-01 | Modernized a few type names in rustc and syntax | Marvin Löbel | -9/+9 | |
| 2013-08-27 | librustc: Ensure that type parameters are in the right positions in paths. | Patrick Walton | -2/+9 | |
| This removes the stacking of type parameters that occurs when invoking trait methods, and fixes all places in the standard library that were relying on it. It is somewhat awkward in places; I think we'll probably want something like the `Foo::<for T>::new()` syntax. | ||||
| 2013-08-27 | auto merge of #8797 : ↵ | bors | -1/+1 | |
| nikomatsakis/rust/issue-8625-assign-to-andmut-in-borrowed-loc-2, r=pcwalton Fixes for #8625 to prevent assigning to `&mut` in borrowed or aliasable locations. The old code was insufficient in that it failed to catch bizarre cases like `& &mut &mut`. r? @pnkfelix | ||||
| 2013-08-27 | Remove remnants of implicit self | Niko Matsakis | -1/+1 | |
| 2013-08-25 | Revert "auto merge of #8745 : brson/rust/metadata, r=cmr" | Brian Anderson | -4/+4 | |
| This reverts commit 491bc3568c87dadaba4d342135bd308961c6e0ef, reversing changes made to 05f1bbba16912f63b562a7847801823872f89ec6. | ||||
| 2013-08-23 | Don't copy metadata after loading | Brian Anderson | -4/+4 | |
| 2013-08-19 | Make supertrait methods callable on object types. | Michael Sullivan | -2/+7 | |
| This requires changes to method search and to codegen. We now emit a vtable for objects that includes methods from all supertraits. Closes #4100. Also, actually populate the cache for vtables, and also key it by type so that it actually works. | ||||
| 2013-08-18 | quote_*! macros take an ExtCtx | Steven Fackler | -9/+9 | |
| They previously required one called "ext_cx" to be in scope. Fixes part of #7727 | ||||
| 2013-08-11 | typeck: Modify method resolution to use new object adjustments, and | Niko Matsakis | -2/+2 | |
| to favor inherent methods over extension methods. The reason to favor inherent methods is that otherwise an impl like impl Foo for @Foo { fn method(&self) { self.method() } } causes infinite recursion. The current change to favor inherent methods is rather hacky; the method resolution code is in need of a refactoring. | ||||
| 2013-08-10 | Mass rename of .consume{,_iter}() to .move_iter() | Erick Tryzelaar | -1/+1 | |
| cc #7887 | ||||
| 2013-08-05 | Updated std::Option, std::Either and std::Result | Marvin Löbel | -5/+5 | |
| - Made naming schemes consistent between Option, Result and Either - Changed Options Add implementation to work like the maybe monad (return None if any of the inputs is None) - Removed duplicate Option::get and renamed all related functions to use the term `unwrap` instead | ||||
| 2013-08-03 | remove obsolete `foreach` keyword | Daniel Micay | -11/+11 | |
| this has been replaced by `for` | ||||
| 2013-08-03 | replace all remaining `for` with `foreach` or `do` | Daniel Micay | -2/+3 | |
| 2013-08-02 | replace `range` with an external iterator | Daniel Micay | -2/+1 | |
| 2013-08-01 | migrate many `for` loops to `foreach` | Daniel Micay | -10/+10 | |
| 2013-07-29 | New naming convention for ast::{node_id, local_crate, crate_node_id, ↵ | Michael Woerister | -9/+9 | |
| blk_check_mode, ty_field, ty_method} | ||||
