about summary refs log tree commit diff
path: root/src/rustc/middle
AgeCommit message (Collapse)AuthorLines
2012-03-21Merge remote-tracking branch 'mozilla/master'Josh Matthews-0/+28
2012-03-21rustc: Add a function to record region bindingsPatrick Walton-0/+28
2012-03-21Avoid mangling names differently in debug builds to work around a build ↵Josh Matthews-40/+47
error. Fix up file name and path debug information, and build one compilation unit for a crate instead of one per source file.
2012-03-21rustc: Replace region parameters in function return valuesPatrick Walton-9/+35
2012-03-21rustc: Check call and bind expressions using a set of region bindingsPatrick Walton-10/+29
2012-03-21rustc: Add a version of `demand` that takes in a set of region variable bindingsPatrick Walton-7/+35
2012-03-21methods workTim Chevalier-17/+75
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-21rustc: Add region unification functionsPatrick Walton-2/+60
2012-03-21rustc: Introduce re_params into the typecheckerPatrick Walton-16/+33
This is the first step of the region refactoring I need to do in order to handle named regions properly.
2012-03-21Fix bug in vtable resolutionMarijn Haverbeke-2/+0
2012-03-20Implement an initial version of placement new.Niko Matsakis-55/+171
2012-03-20Class methods WIPTim Chevalier-129/+180
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-20core: Rename unsafe::leak to unsafe::forget. Closes #2031Brian Anderson-2/+2
2012-03-20Remove unused "flav" parameter from function registration paths.Graydon Hoare-17/+15
2012-03-20Fix naughty mangling-breakage from stringifying a node ID. Close #1344.Graydon Hoare-1/+1
2012-03-20Work on fixing name mangling.Graydon Hoare-32/+17
2012-03-20rustdoc: Run the entire resolve passBrian Anderson-11/+1
2012-03-20make native and crust functions conform to x86-64 ABIJyun-Yan You-35/+564
2012-03-20Revert order of arguments to option::maybe and from_maybeMarijn Haverbeke-2/+2
Closes #2019
2012-03-20Fix caching bug in resolve, get rid of enumness kludgeMarijn Haverbeke-106/+55
Closes #1911
2012-03-20Only make symbols external when they are actually externally accessibleMarijn Haverbeke-25/+33
Closes #2030
2012-03-20Move external-reachability checker to transMarijn Haverbeke-0/+147
Preparation for a fix for issue #2020
2012-03-19rustc: Fix handling of the `self` region in method return types. Also stub ↵Patrick Walton-3/+24
some code to allow the regions of simple field access expressions to be determined.
2012-03-19rustc: Fix mutability checking when dereferencing a region-annotated pointerPatrick Walton-7/+1
2012-03-19Send string concatenation to specialized upcall, shave 17s off librustc ↵Graydon Hoare-5/+6
compile time.
2012-03-19Properly check kinds when instantiating typesMarijn Haverbeke-17/+37
Closes #2011
2012-03-18core: Rename vec::position_elt to position_elemBrian Anderson-2/+3
2012-03-16Encode both private and public class fields in metadataTim Chevalier-7/+3
This is necessary to calculate the correct offsets for field references. Simple cross-crate class tests (still with fields only) now pass.
2012-03-16Don't break -g in the presence of monomorphization.Josh Matthews-0/+1
2012-03-16rustc: Unify impl self types in the opposite order so variance is correctBrian Anderson-1/+1
2012-03-16Classes WIPTim Chevalier-96/+116
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-16core: Store reexporting result and either. Closes #1997Brian Anderson-0/+2
2012-03-16allow binding of fn~, make result fn@. fixes 1899.Niko Matsakis-2/+4
2012-03-16Check kind bounds when calling methodsMarijn Haverbeke-7/+23
Closes #1915
2012-03-16Forbid boxed ifaces with self types or generic methods in bounded paramsMarijn Haverbeke-19/+39
They are a soundness hole. Closes #1994
2012-03-16Remove shared tydescsMarijn Haverbeke-62/+17
All tydescs are static now, there's no need to worry about marshalling them between threads anymore.
2012-03-16Support binding of methods off boxed iface valuesMarijn Haverbeke-12/+29
Closes #435
2012-03-15rustc: Describe why regions failed to unify as part of the type error messagePatrick Walton-9/+19
2012-03-15rustc: Fix the AST map to actually map blocks. Also improve region error ↵Patrick Walton-1/+2
messages involving blocks.
2012-03-15rustc: Index blocksPatrick Walton-1/+8
2012-03-15Improve error message for passing mutable argument by referenceTim Chevalier-1/+1
2012-03-15rustc: Instantiate self regions in implsPatrick Walton-17/+22
2012-03-15rustc: Have the typechecker pick up the resolved self regionPatrick Walton-2/+2
2012-03-15rustc: Create self region bindings, and forbid the self region from being ↵Patrick Walton-16/+53
used in places it shouldn't be
2012-03-15switch over to using new serialize/deserialize codeNiko Matsakis-4/+12
2012-03-15std: Follow conventions in bitvBrian Anderson-3/+3
2012-03-15Make last-use finder treat referenced function arguments properlyMarijn Haverbeke-5/+17
Closes #1964
2012-03-15Fix bug in vtable builderMarijn Haverbeke-1/+8
Closes #1947 , which I completely misdiagnosed.
2012-03-15Reuse monomorphized functions more aggressivelyMarijn Haverbeke-63/+349
Adds a trans::type_use pass that, given a function body, detects how dependant that function is on properties of its type parameters.
2012-03-15Remove support for dynamically-sized types from translation codeMarijn Haverbeke-553/+148