about summary refs log tree commit diff
path: root/src/rustc/middle
AgeCommit message (Collapse)AuthorLines
2012-05-03allow fn exprs to omit arg typesNiko Matsakis-59/+115
also, avoid using type variables for fn args with omitted types unless necessary. This will be important for bound regions in fn types. fixes #2093
2012-05-03Implement better shape code for evec, estr.Graydon Hoare-32/+21
2012-05-03Check early on in typeck that types being implemented are actually iface typesTim Chevalier-5/+12
Closes #2330.
2012-05-03rustc: Fix comment about ABI in trans::nativeBrian Anderson-1/+1
2012-05-03rustc: Link to original Clay x86 classification codeBrian Anderson-0/+3
2012-05-03add forgotten index and fix array typeJyun-Yan You-16/+18
2012-05-03Mention missing constructor when complaining about inexhaustive top-level ↵Marijn Haverbeke-11/+27
pattern It previously, uselessly, only pointed out the constructor when the inexhaustive pattern was nested in some other pattern. Closes #2337
2012-05-02report ambig impl methodsNiko Matsakis-0/+19
2012-05-02rustc: Hack around some FFI bustage. Unbreak servoBrian Anderson-0/+24
2012-05-02Error message reformatting, close #2309.Graydon Hoare-2/+2
2012-05-02Encode the ifaces a class implements in metadataTim Chevalier-3/+11
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-05-01New lint pass for picking out uses of old-style vecs and str.Graydon Hoare-2/+53
2012-05-01Remove code that was accidentally committedTim Chevalier-4/+1
This was a workaround for the bug that was actually fixed in 164039e86720b5e6c06ca2320700d979f60d69d6
2012-05-01Don't re-export a glob-imported ID when the same ID is defined withinTim Chevalier-3/+12
a module See the test case I added (issue-2316-c) for a concrete example. issue-2316 also contains the originally reported test case. resolve was using bitwise or instead of logical or when checking exports, resulting in excessively eager evaluation. A one-line fix that took six hours to isolate ;-)
2012-04-30Stop inferring bot/static when types/regions are unconstrained.Niko Matsakis-44/+146
Also, some other changes that came up along the way: - add a 'blk' region for the current block. - detect unused type/region variables.
2012-04-27rustc: Remove old align_of intrinsicBrian Anderson-7/+2
2012-04-27rustc: Clean up some enum codeBrian Anderson-16/+5
2012-04-27core: Split sys::align_of into min_align_of, pref_align_ofBrian Anderson-4/+4
2012-04-27rustc: Add min_align_of, pref_align_of intrinsic, deprecate align_ofBrian Anderson-2/+13
2012-04-26rustc: Add llalign_of_minBrian Anderson-0/+6
2012-04-26rustc: Rename llalign_of_real to llalign_of_prefBrian Anderson-8/+10
This alignment is the "preferred" alignment of a type, which is not necessarily the alignment the compiler will use when packing the type into structures - that is the "ABI" alignment (in LLVM terms). On x86, 64-bit ints have 8-byte preferred alignment, but 4-byte ABI alignment.
2012-04-26Add check for path-statements, close #400.Graydon Hoare-1/+28
2012-04-26Lowercase warning message.Graydon Hoare-1/+1
2012-04-25lots of work to make iface/impls parameterized by regionsNiko Matsakis-360/+449
- paths can now take region parameters, replacing the dirty hack I was doing before of abusing vstores. vstores are now a bit of a hack though. - fix various small bugs: - we never checked that iface types were compatible when casting to an iface with `as` - we allowed nonsense like int<int> - and more! (actually that may be it)
2012-04-25Be a bit more cautious about marking things no-throw.Graydon Hoare-3/+0
2012-04-25Set no-unwind on glue functions that don't drop resources.Graydon Hoare-17/+39
2012-04-25Set no-unwind attribute on all upcalls other than fail.Graydon Hoare-0/+5
2012-04-25rustc: Cache normalized typesBrian Anderson-3/+12
2012-04-25rustc: Use LLVM named structs for enum typesBrian Anderson-76/+165
2012-04-25typeck: Take more care to pass down expected typesMarijn Haverbeke-50/+86
This helps with prototype inference and avoids some 'must be known in this context' errors.
2012-04-25Rewrite exhaustiveness checkerMarijn Haverbeke-208/+236
Issue #2111
2012-04-24Revert "rustc: Use LLVM named structs for enum types"Brian Anderson-160/+76
This reverts commit 6e909e387d1b71a8b813433ce834384ffb13fedf.
2012-04-24Revert "rustc: Cache normalized types"Brian Anderson-12/+3
This reverts commit 06afe21c033abf370825034f3b1639a80386da6d.
2012-04-24rustc: Cache normalized typesBrian Anderson-3/+12
2012-04-24rustc: Use LLVM named structs for enum typesBrian Anderson-76/+160
2012-04-24Workarounds for bug #2280: add some temporaries for borrowing.Graydon Hoare-2/+8
2012-04-24rustc: Fix type_need_unwind_cleanup. Closes #2272Brian Anderson-2/+6
2012-04-24rustc: Remove a bitcast. Issue #2276Brian Anderson-1/+1
2012-04-23Allow classes to be cast to ifaces that are in the same crateTim Chevalier-121/+238
I had to xfail one existing test case (class-implements-int) because, I think, of the same bug described in #2272.
2012-04-23Rename option::get_or_default to get_default, for consistencyTim Chevalier-1/+1
2012-04-23Fix bug with * patterns in trans_altTim Chevalier-1/+2
enter_opt was handling the (*) case wrong and causing a bounds check failure. Fixed it (the test case is one of the extracted ones from the reference manual)
2012-04-23moderate comment, remove some dead regions codeNiko Matsakis-14/+7
2012-04-23remove dead codeNiko Matsakis-10/+0
2012-04-23remove outdated commentNiko Matsakis-2/+0
2012-04-23Various regions fixes.Niko Matsakis-88/+89
2012-04-23rewrite the resolution infrastructure; but it's still grodyNiko Matsakis-155/+210
2012-04-23Guard against infinitely expanding generic/inline functionsMarijn Haverbeke-6/+19
Closes #2220 Test case disabled until a memory-leak issue is resolved.
2012-04-23Emit a more useful error when using an unsuitable function for a loopMarijn Haverbeke-3/+14
Closes #2255
2012-04-23Move map iface over to more `for`-friendly iteration methodsMarijn Haverbeke-18/+18
2012-04-23Simplify representation of ast::pathMarijn Haverbeke-51/+37