about summary refs log tree commit diff
path: root/src/rustc/middle
AgeCommit message (Collapse)AuthorLines
2012-05-16add a large comment on how infer worksNiko Matsakis-16/+179
2012-05-16pull method lookup / region manip into their own modulesNiko Matsakis-557/+564
2012-05-16further reorganizationNiko Matsakis-14/+46
2012-05-16correct preservation of explicit borrows like "let x = &*y;"Niko Matsakis-3/+3
2012-05-16break out type checking of alts/patterns (again)Niko Matsakis-260/+269
2012-05-16Revert "break out type checking of alts/patterns"Niko Matsakis-264/+258
This reverts commit 8d1c1720e331ea56cfde33ab047216d232236e4b.
2012-05-16break out type checking of alts/patternsNiko Matsakis-258/+264
2012-05-16missing importNiko Matsakis-1/+1
2012-05-16further modularization of typeck, add commentsNiko Matsakis-3398/+3485
2012-05-15check if the type of a local variable contains illegal regionNiko Matsakis-68/+101
also, try to suppress some of the duplicate errors---in general more work is needed to make these error messages comprehensible to ordinary humans
2012-05-15Add classes and class fields to the tcacheTim Chevalier-1/+6
They were being added lazily, which prevented class types from being used as an argument to a variant.
2012-05-15Clarify a commentTim Chevalier-1/+1
...at least I think this is what was meant.
2012-05-15Remove an assertion from trans::base::iter_structural_tyTim Chevalier-2/+0
I had put in an assertion that if the ty is a class, it doesn't have a dtor, but that doesn't make sense, since this gets used to make take glue and not just drop glue.
2012-05-15move regionck into typeck, in the process fixing a bug or twoNiko Matsakis-135/+219
2012-05-15Generate drop glue correctly for classes with destructorsTim Chevalier-26/+124
2012-05-15Remove the unused pairwise.rsPatrick Walton-407/+0
2012-05-15move infer into typeck moduleNiko Matsakis-0/+0
2012-05-15break apart typeck a little (more to come)Niko Matsakis-1499/+1525
2012-05-15get preservation of boxes working, at least in simple casesNiko Matsakis-300/+474
2012-05-15add node_ids to blocksNiko Matsakis-108/+167
2012-05-15purge unused loop_cont fieldNiko Matsakis-17/+8
2012-05-15make poison-on-free work, disable copying if borrowck is enabledNiko Matsakis-0/+6
2012-05-15Remove `be` keyword.Lindsey Kuper-45/+9
Closes #2227.
2012-05-14rustc: Break some of metadata's dependencies on sessionBrian Anderson-3/+7
2012-05-14rustc: Break metadata's dependency on linkBrian Anderson-3/+3
2012-05-14rustc: Eliminate metadata's dependency on astencodeBrian Anderson-15/+35
2012-05-14rustc: Eliminate encoder's dependency on astencodeBrian Anderson-0/+1
2012-05-14rustc: Move astencode from metadata to middleBrian Anderson-0/+1100
2012-05-14Instantiate per-type iface-based visit_glue when intrinsic ifaces present.Graydon Hoare-59/+159
2012-05-14More work on reflection, now calls iface visitors back as well.Graydon Hoare-66/+63
2012-05-14First cut at dtors for classesTim Chevalier-25/+97
Classes with dtors should compile now. Haven't yet tested whether they actually run correctly. Beginnings of support for #2295, though that won't be done until there's more test cases and resources are removed.
2012-05-14Enforce that self doesn't escape from a classTim Chevalier-0/+60
Closes #2294
2012-05-13rustc: Eliminate metadata's dependency on transBrian Anderson-16/+23
2012-05-11move purity checking into borrowck, addresses #1422Niko Matsakis-84/+141
2012-05-11First working monomorphic type-reflection.Graydon Hoare-18/+74
2012-05-10replace mutbl pass with borrowckNiko Matsakis-502/+405
2012-05-10Preliminary groundwork for intrinsic module, reflection interface.Graydon Hoare-0/+36
2012-05-10Remove `do { ... } while ...` from the language.Paul Stansifer-89/+9
2012-05-09implement new borrow ck (disabled by default)Niko Matsakis-263/+1634
2012-05-09reduce self type to a special type parameterNiko Matsakis-301/+232
2012-05-08Start parsing pub/priv on regular itemsMarijn Haverbeke-12/+13
Issue #1893
2012-05-07rustc: Put all boxes into addrspace 1Brian Anderson-7/+52
2012-05-07That awkward moment when you forget to add your final changesTim Chevalier-2/+3
Fixes build breakage.
2012-05-07In resolve, visit the path in an iface refTim Chevalier-12/+34
Necessary to resolve any type arguments in a ref to a parameterized iface. This meant that, for example: class A implements B<int> { ... didn't work before, because the "int" in B's argument wasn't getting visited, and thus wasn't getting resolved. Now it works. Partially addresses Issue #2288, but I also want to check that class ty params can appear as the type arguments to ifaces (for example, class A<T> implements B<T> {... should work.)
2012-05-07make it illegal to implicitly capture mutable variablesNiko Matsakis-85/+132
this is the final part of #1273
2012-05-04new cap clause syntaxNiko Matsakis-155/+209
2012-05-03Turn constants in back::abi into uints, and propagate typesTim Chevalier-154/+140
This means GEPi now takes a list of uints. Apologies in advance if this is hard to rebase against, but it gets rid of many a cast :-) Also modernized some for loops here and there.
2012-05-03allow enums that ref themselves via unsafe pointersNiko Matsakis-1/+4
2012-05-03Removed unused import of std::dequeTim Chevalier-1/+1
2012-05-03Revert "allow fn exprs to omit arg types"Niko Matsakis-115/+59
This reverts commit 1ba4ca4c4a0153578e812baf5f7f5554d079de40.