about summary refs log tree commit diff
path: root/src/rustc/middle
AgeCommit message (Collapse)AuthorLines
2012-06-29Allow empty enums to be sent (#2737)Eric Holk-1/+1
2012-06-29Adding a bunch of atomic intrinsics.Eric Holk-3/+88
Adding a test cases for the atomic intrinsics.
2012-06-29Switch the compiler over to using ~[] notation instead of []/~. Closes #2759.Michael Sullivan-996/+996
2012-06-28Replaced almost all vector+ in rustc (#2719)Eric Holk-82/+97
Didn't update shape because the changes were causing segfaults.
2012-06-28replace more vector + (issue #2719)Eric Holk-57/+88
2012-06-27rustc: Fix a missing application of the operator in fold_tyBrian Anderson-1/+1
2012-06-27rustc: Don't give variables the same name as enums in transPatrick Walton-47/+47
Conflicts: src/rustc/middle/trans/alt.rs src/rustc/middle/trans/base.rs src/rustc/middle/trans/closure.rs src/rustc/middle/trans/impl.rs src/rustc/middle/trans/uniq.rs
2012-06-27rustc: Don't allow multiple candidate methods from impls with the same def IDPatrick Walton-10/+17
2012-06-27Better error message instead of bare "fail" in inferLindsey Kuper-3/+3
2012-06-27Remove unnecessary bounds checks in vec::push_all (issue #2719)Eric Holk-0/+6
Don't needlessly drop closures (issue #2603)
2012-06-26Change 'native' and 'crust' to 'extern'.Graydon Hoare-146/+159
This comes with a terminology change. All linkage-symbols are 'extern' now, including rust syms in other crates. Some extern ABIs are merely "foreign". The term "native" is retired, not clear/useful. What was "crust" is now "extern" applied to a _definition_. This is a bit of an overloading, but should be unambiguous: it means that the definition should be made available to some non-rust ABI.
2012-06-26Properly cleanup slice literals. Closes #2705.Michael Sullivan-0/+7
2012-06-26Some box cleanup that doesn't break the build.Michael Sullivan-52/+42
2012-06-26rustc: Make trans no longer insist that there be exactly one impl scope per ↵Patrick Walton-10/+5
module Conflicts: src/rustc/middle/trans/base.rs
2012-06-26Revert "Clean up a bunch of box related code."Michael Sullivan-27/+38
This reverts commit bacf9e9887872a40d16798813aa66b6916cc6a4e.
2012-06-26Be a little more clever about calculating sizes for class typesTim Chevalier-11/+17
We could try to calculate the size of a partially-converted class type, and run into an LLVM error because we were trying to calculate the size of a named struct whose fields hadn't yet be filled in. The issue can be dodged by extending simplify_type to convert classes to isomorphic structural records, just for the purposes of size calculations. (for real this time) Closes #2718
2012-06-26Incorporate class fields into recursive-type checkTim Chevalier-1/+9
Noticed while investigating issue 2718 that the typechecker allowed some non-instantiable types involving classes. This wasn't the root of 2718, but fixed it anyway.
2012-06-26Typos in a comment and an error messageTim Chevalier-2/+2
2012-06-26Clean up a bunch of box related code.Michael Sullivan-38/+27
2012-06-26Getting rid of lots more vector +=. (issue #2719)Eric Holk-123/+133
2012-06-25Comments only: fix some comments that got spurious /~sMichael Sullivan-3/+3
2012-06-25Make vectors uglier ([]/~). Sorry. Should be temporary. Closes #2725.Michael Sullivan-1083/+1121
2012-06-25Split deprecated str and vec warnings into two flags, enable old_vecs by ↵Michael Sullivan-7/+18
default.
2012-06-25rustc: Make 'do' work with effects the same as 'for'Brian Anderson-1/+1
2012-06-25MergeTim Chevalier-31/+34
2012-06-25Finish compare glue for classesTim Chevalier-2/+3
This tests == and !=. I don't know what <, >, etc. should do. Closes #2601
2012-06-24Make 'do' expressions accept stack closuresBrian Anderson-1/+1
2012-06-24Remove resourcesTim Chevalier-394/+75
Also fixed shapes for classes with dtors, as well as handling offsets for classes with dtors correctly in take glue. Closes #2485
2012-06-22Minor capitalization/punctuation fixes in error messagesLindsey Kuper-16/+17
2012-06-22Nicer quoting in "attempted access of field" message. Issue #2358.Lindsey Kuper-2/+3
2012-06-22Don't need a span on "main function not found" error. Issue #2707.Lindsey Kuper-3/+3
2012-06-22Use must_have_lock instead of private functions. (Issue #2700)Eric Holk-1/+0
I hereby declare that messages sent from the same source arrive in order (Issue #2605) Removing FIXME, owned is the correct type here. (Issue #2704) Remove outdated FIXME (Issue #2703) Updating test for spawning native functions (Issue #2602) Removing bogus FIXME (Issue #2599)
2012-06-22Hack to make [] and []/~ the same type in preparation for switching to []/~.Michael Sullivan-2/+8
2012-06-22Change resources to classes in libstd and rustcTim Chevalier-6/+14
2012-06-22Make the implicit copyability of []/~ configurable, like [] is, since we ↵Michael Sullivan-6/+2
will be switching sooner rather than later.
2012-06-21In reachability, traverse all classes that have dtorsTim Chevalier-1/+5
since dtors always have external linkage
2012-06-21Make liveness print out a proper error message for moves out of a self fieldTim Chevalier-1/+8
This was a call to span_bug() before. I'm not sure about the other cases, but the test case shows that the `vk_self` case can certainly arise with a bad program, so it should be a span_err() thing and not a span_bug() thing. Closes #2590
2012-06-21Tag all remaining FIXMEs with bugs. Install rule in tidy script to enforce this.Graydon Hoare-77/+71
2012-06-21Change the level of forcing in structurally_resolved_type().Lindsey Kuper-17/+10
A cleaner way to handle suffix inference for unary minus exprs.
2012-06-21Move vector addition out of trans and into libcore.Eric Holk-0/+2
2012-06-21Move vector addition out of trans and into libcore.Eric Holk-206/+37
2012-06-21Generate a temporary for assign_ops. Issue #2581Eric Holk-2/+12
2012-06-21Consolidate "make sure types are the same" fns. Issue #2644.Lindsey Kuper-42/+21
2012-06-21Rename upcall_malloc_dyn to just upcall_malloc.Michael Sullivan-3/+3
2012-06-21Issue #2657: track mutability of bindings, also prevent move from bindingsNiko Matsakis-7/+36
2012-06-21handle moves in let initializers and allow moves from unsafe ptrsNiko Matsakis-0/+16
Related to issue #2657, but this is not a complete fix.
2012-06-20Make trans give correct types to monomorphic dtorsTim Chevalier-13/+41
Irritatingly, class dtors have a different type from resource dtors (because class dtors have a self argument), and the monomorphic case wasn't reflecting that. Fixed.
2012-06-20Fix resolve bug that made nested classes not workTim Chevalier-17/+16
It wasn't possible to refer to the constructor for a class nested inside an item from the class's outer scope. Fixed.
2012-06-20Monomorphize dtors correctlyTim Chevalier-21/+41
The same dtor was getting re-used for different instances, which didn't always work right. Fixed.
2012-06-20Remove bind. Issue #2189Brian Anderson-179/+78