about summary refs log tree commit diff
path: root/src/rustc/metadata/decoder.rs
AgeCommit message (Collapse)AuthorLines
2012-06-06Revert "Revert "Merge pull request #2516 from mozilla/incoming" due to failures"Tim Chevalier-1/+1
This reverts commit 9fae95860de510f6874810cf43efb83f101246ef.
2012-05-21rustc: Move ast_map to the syntax crateBrian Anderson-1/+1
2012-05-17Annotate or fix FIXMEs in LLVM bindings and metadata codeTim Chevalier-2/+2
Fixed up a few FIXMEs in lib/llvm to use more descriptive data types. Covered FIXMEs in metadata::{creader, csearch, decoder} and one in encoder.
2012-05-16rustc: Sever the link between metadata and resolveBrian Anderson-2/+7
2012-05-15Generate drop glue correctly for classes with destructorsTim Chevalier-0/+14
2012-05-14rustc: Break some of metadata's dependencies on sessionBrian Anderson-2/+4
2012-05-14rustc: Eliminate metadata's dependency on astencodeBrian Anderson-5/+13
2012-05-14rustc: Move astencode from metadata to middleBrian Anderson-0/+1
2012-05-13rustc: Eliminate metadata's dependency on transBrian Anderson-1/+0
2012-05-08Start parsing pub/priv on regular itemsMarijn Haverbeke-6/+6
Issue #1893
2012-05-02Remove commented-out code and old comments that accidentally snuck inTim Chevalier-19/+1
2012-05-02Encode the ifaces a class implements in metadataTim Chevalier-12/+31
This lets you use class A as if it had type B if A implements B, and A and B are in different crates from your own. Closes #2285
2012-04-23Allow classes to be cast to ifaces that are in the same crateTim Chevalier-6/+3
I had to xfail one existing test case (class-implements-int) because, I think, of the same bug described in #2272.
2012-04-19make nominal types optionally parameterized by a self region.Niko Matsakis-1/+16
Issue #2201.
2012-04-16rustc: Resolve external impls defined in yet other crates. Issue #2196Brian Anderson-5/+14
2012-04-15syntax: Cleanup attr module. Closes #1545Brian Anderson-1/+1
2012-04-08Encode crate dependencies' hash and version dataHaitao Li-4/+21
2012-04-06Re-rename option functionsTim Chevalier-1/+1
get_with_default (nee from_maybe) => get_default with_option (nee maybe) => map_default with_option_do (nee may) => iter As per discussion of 21be1379d561b6679a8a2ea47dce88f948c5acca
2012-04-06Convert old-style for loops to new-styleMarijn Haverbeke-6/+6
Most could use the each method, but because of the hack used to disambiguate old- and new-style loops, some had to use vec::each. (This hack will go away soon.) Issue #1619
2012-04-02Rename some core::option functionsTim Chevalier-1/+1
from_maybe => get_with_default maybe => with_option may => with_option_do I know these names are kind of ridiculous, but it's the best I could think of. Feel free to bikeshed. Closes #2081
2012-03-29rustc: Remove the rustsyntax::attr wrapper in frontBrian Anderson-1/+1
2012-03-28Allow explicit self-calls within classesTim Chevalier-1/+1
Allow writing self.f() within a class that has a method f. In a future commit, this syntax will be required. For now, you can write either self.f() or f(). I added a "privacy" field to all methods (whether class methods or not), which allowed me to refactor the AST somewhat (getting rid of the class_item type; now there's just class_member).
2012-03-27Enforce mutability declarations in classes; correct shapes for classesTim Chevalier-2/+14
1. Enforce mutability declarations on class fields. Don't allow any mutation of class fields not declared as mutable (except inside the constructor). 2. Handle classes correctly in shape (treat classes like records).
2012-03-26Enforce privacy declarations for class fields and methodsTim Chevalier-16/+15
2012-03-23Remove last vestiges of old-style intrinsicsMarijn Haverbeke-8/+0
Closes #2048
2012-03-23Revert removal of intrinsicsMarijn Haverbeke-0/+8
Oops. We can't do this yet until the next snapshot.
2012-03-23Remove support for the old-style intrinsicsMarijn Haverbeke-8/+0
Closes #2042 Closes #1981
2012-03-22Make cross-crate calls to class methods workTim Chevalier-1/+23
2012-03-21add mut decls to rustc and make them mandatoryNiko Matsakis-23/+26
2012-03-21methods workTim Chevalier-14/+24
Cross-crate method calls don't work yet. Added run-pass/class-method-cross-crate to test that, but it's xfailed References to fields within methods don't work yet. Added run-pass/class-methods to test that, but it's also xfailed
2012-03-20Class methods WIPTim Chevalier-27/+19
In particular, use the ast::method type to represent a class method, and try to reuse as much iface code as possible. (This makes sense now since I'll be allowing polymorphic class methods.)
2012-03-16Encode both private and public class fields in metadataTim Chevalier-6/+2
This is necessary to calculate the correct offsets for field references. Simple cross-crate class tests (still with fields only) now pass.
2012-03-16Fix encoding of class ctorsTim Chevalier-2/+2
Class tests still fail at runtime
2012-03-16Classes WIPTim Chevalier-4/+55
Cross-crate metadata for classes works well enough that programs with classes in other crates compile successfully, but output wrong results. Checking in work so far to avoid merge hassles. (Tests are xfailed.)
2012-03-15Properly recognize external intrinsicsMarijn Haverbeke-0/+8
2012-03-15Make sure enum and resource constructors are inlined properlyMarijn Haverbeke-6/+25
2012-03-15Hugely simplify iface handlingMarijn Haverbeke-1/+1
With the assumption of monomorphization
2012-03-15Fix assumption that monomorphized method's impls are crate-localMarijn Haverbeke-0/+13
2012-03-14std: Rename the hashmap constructors to conform to new standardsBrian Anderson-9/+9
Instead of using the new_ prefix just name them after their type
2012-03-12Libc/os/run/rand/io reorganization. Close #1373. Close #1638.Graydon Hoare-1/+1
- Move io, run and rand to core. - Remove incorrect ctypes module (use libc). - Remove os-specific modules for os and fs. - Split fs between core::path and core::os.
2012-03-07stdlib: Stop incurring vtable dispatch costs when hashmaps are usedPatrick Walton-0/+1
This required changing almost all users of hashmaps to import the hashmap interface first. The `size` member in the hashmap structure was renamed to `count` to work around a name conflict.
2012-03-07Revert "stdlib: Stop incurring vtable dispatch costs when hashmaps are used"Patrick Walton-1/+0
This reverts commit f0250a23d3fa2f8b4a4a4113ca89e41945a4cfed.
2012-03-07stdlib: Stop incurring vtable dispatch costs when hashmaps are usedPatrick Walton-0/+1
This required changing almost all users of hashmaps to import the hashmap interface first. The `size` member in the hashmap structure was renamed to `count` to work around a name conflict.
2012-03-02Move src/comp to src/rustcGraydon Hoare-0/+577