| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2012-01-18 | Remove '.' after nullary tags in patterns | Tim Chevalier | -724/+724 | |
| Does what it says on the tin. The next commit will remove support for this syntax. | ||||
| 2012-01-18 | remove align_mode and rewrite GEP_tup_like to align correctly | Niko Matsakis | -96/+64 | |
| Although the old version of GEP_tup_like was incorrect in some cases, I do not believe we ever used it in an incorrect fashion. In particular, it could go wrong with extended index sequences like [0, 1, 3], but as near as I can tell we only ever use it with short sequences like [0, i]. | ||||
| 2012-01-18 | correct use of GEP_tup_like in closure constr | Niko Matsakis | -28/+36 | |
| also, streamline type_is_tup_like() to the cases which actually work | ||||
| 2012-01-19 | rustc: Use integer from ctypes consistently | Haitao Li | -41/+48 | |
| 2012-01-19 | Use ctypes in native function declarations | Haitao Li | -89/+106 | |
| 2012-01-19 | rustc: Warn when int or uint is used in a native type decl | Haitao Li | -0/+29 | |
| Issue #1403 | ||||
| 2012-01-17 | use 64-bit memset on 64-bit platforms. Fixes #1546. Fixes #843. | Niko Matsakis | -22/+12 | |
| Actually, we don't "fix" #843 so much as close it: as with memmove, we simply use an alignment of 1 with dynamically sized types. | ||||
| 2012-01-17 | roll back commit 1c7a62 | Niko Matsakis | -16/+16 | |
| 2012-01-17 | Merge pull request #1544 from kevina/issue-1393 | Graydon Hoare | -4/+4 | |
| Minor cleanups to custom discriminator code. | ||||
| 2012-01-17 | encode variant names and have log print them out. | Niko Matsakis | -3/+16 | |
| 2012-01-17 | Allow omission of the '.' after nullary tag patterns | Tim Chevalier | -127/+327 | |
| This commit allows patterns like: alt x { some(_) { ... } none { } } without the '.' after none. The parser suspends judgment about whether a bare ident is a tag or a new bound variable; instead, the resolver disambiguates. This means that any code after resolution that pattern-matches on patterns needs to call pat_util::normalize_pat, which consults an environment to do this disambiguation. In addition, local variables are no longer allowed to shadow tag names, so this required changing some code (e.g. renaming variables named "mut", and renaming ast::sub to subtract). The parser currently accepts patterns with and without the '.'. Once the compiler and libraries are changed, it will no longer accept the '.'. | ||||
| 2012-01-17 | Use a memset upcall to zero things without static alignment | Marijn Haverbeke | -16/+16 | |
| This fixes issues #843 and #1546. The cost of an upcall is unfortunate, though. I assume there must be a way to simply manually compute the pointer or size, using something akin to the formula in `align_to` in `rust_util.h`. I could not get this to work, unfortunately. | ||||
| 2012-01-16 | Minor cleanups to custom discriminator code. | Kevin Atkinson | -4/+4 | |
| Mostly updates to the comments and docs from Pull Request #1537. | ||||
| 2012-01-16 | Remove misguided indirect return in trans_closure | Marijn Haverbeke | -8/+4 | |
| Closes #1528 | ||||
| 2012-01-16 | Store type names in crate metadata | Marijn Haverbeke | -1/+6 | |
| Improves type error messages referring to external types. Issue #1507 | ||||
| 2012-01-16 | Don't evaluate discriminator value constants when parsing. | Kevin Atkinson | -5/+84 | |
| Remove disr_val from ast::variant_ and always use ty::variant_info when the value is needed. Move what was done during parsing into other passes, primary typeck.rs. This move also correctly type checks the disr. value expression; thus, fixing rustc --pretty=typed when disr. values are used. | ||||
| 2012-01-13 | Undo over-enthusiastic obj system removal in debuginfo. | Josh Matthews | -0/+3 | |
| 2012-01-13 | llvm: Switch back to LLVM trunk | Brian Anderson | -1/+1 | |
| 2012-01-13 | distinguish "any closure" and "stack closure" (block) | Niko Matsakis | -15/+29 | |
| 2012-01-13 | make blocks fn& and fn stand for "any closure" | Niko Matsakis | -0/+2 | |
| 2012-01-13 | deprecate fn exprs and the fn() type, preferring fn@ and native fn | Niko Matsakis | -47/+49 | |
| 2012-01-13 | Obj system? What obj system? | Marijn Haverbeke | -1690/+128 | |
| Removes the obj system from the compiler. Closes #1484 | ||||
| 2012-01-13 | Remove all remaining uses of objs from the compiler | Marijn Haverbeke | -31/+32 | |
| 2012-01-12 | Add type parameters when checking wildcard patterns | Tim Chevalier | -1/+12 | |
| For some reason, wildcard patterns were never getting type parameter substitutions attached. This would cause an assertion failure when checking a wildcard pattern that matches against a tag with polymorphic type (not sure why this didn't come up before). Fixed it. (The diff and test case may be easier to understand than this note :P) Closes #1503. | ||||
| 2012-01-12 | add tydescs into shape, rewrite walk_fn_contents() | Niko Matsakis | -14/+5 | |
| 2012-01-12 | free uniq data we encounter on the sweep, walk thru them otherwise | Niko Matsakis | -5/+29 | |
| 2012-01-12 | Make driver::session::session no longer an object | Marijn Haverbeke | -76/+99 | |
| Rather, it is now a struct where properties like opts are accessed directly, and the error-reporting methods are part of a static impl (with the same name as the type). | ||||
| 2012-01-12 | Implement passing cast-to-vtable values as bounded params | Marijn Haverbeke | -76/+155 | |
| Closes #1492 | ||||
| 2012-01-12 | Cleanups to previous commits for issue #1393. | Kevin Atkinson | -5/+5 | |
| 2012-01-11 | Fix dependency bug iface-did-of-impl resolving | Marijn Haverbeke | -9/+10 | |
| By simply not resolving that def id until the typeck pass. Closes #1494 | ||||
| 2012-01-11 | Implement std::map as an iface/impl instead of an obj | Marijn Haverbeke | -82/+8 | |
| 2012-01-11 | Fix regression in resolving of external impls | Marijn Haverbeke | -5/+8 | |
| 2012-01-11 | Pass type with params intact as item_type for method callees | Marijn Haverbeke | -7/+6 | |
| This prevents trans_args from optimizing out nil return types. The method might be generic, in which case it *will* write to a nil retptr. | ||||
| 2012-01-10 | Add support for casting enum-like tags to scalar values. | Kevin Atkinson | -5/+48 | |
| 2012-01-10 | Support explicit discriminant numbers on tag variants. | Kevin Atkinson | -25/+18 | |
| Addresses issue #1393. For now disallow disr. values unless all variants use nullary contractors (i.e. "enum-like"). Disr. values are now encoded in the crate metadata, but only when it will differ from the inferred value based on the order. | ||||
| 2012-01-10 | replace lambda with fn@ | Niko Matsakis | -15/+10 | |
| 2012-01-10 | rename sendfn to fn~, lambda to fn@ | Niko Matsakis | -62/+54 | |
| 2012-01-10 | rustc: Remove sret attributes from functions | Brian Anderson | -13/+3 | |
| Something about the way we're using it is causing incorrect code generation. Closes #1343 | ||||
| 2012-01-09 | Change all uses of 'when' in alt-patterns to 'if' | Austin Seipp | -6/+6 | |
| Issue #1396 | ||||
| 2012-01-09 | Remove proto_sugar and 'lambda' as keyword, commit to fn@. | Graydon Hoare | -30/+29 | |
| 2012-01-09 | Iface types are not structural | Marijn Haverbeke | -2/+1 | |
| Not sure how they ended up being marked as such. | ||||
| 2012-01-09 | Work around recursive type check for iface types | Marijn Haverbeke | -3/+7 | |
| They are nominal, and can safely refer to themselves. | ||||
| 2012-01-09 | Properly recognize self as an upvar when closed over | Marijn Haverbeke | -34/+27 | |
| Closes #1463 | ||||
| 2012-01-09 | Fix #1474: check that block args resolved to bare fns do not make use of upvars | Niko Matsakis | -8/+13 | |
| 2012-01-09 | Don't resolve upvars in fn() { ... } exprs | Marijn Haverbeke | -6/+3 | |
| Closes #1467 | ||||
| 2012-01-08 | correct long line | Niko Matsakis | -2/+2 | |
| 2012-01-08 | modify last use to take into account cap clause, add new test | Niko Matsakis | -9/+44 | |
| 2012-01-08 | First barely-working version of casting to iface | Marijn Haverbeke | -33/+99 | |
| Issue #1437 | ||||
| 2012-01-08 | Add fall-through case for non-iface bounds typeck::lookup_method | Marijn Haverbeke | -0/+1 | |
| Closes #1462 | ||||
| 2012-01-06 | choose a new arbitrary value | Niko Matsakis | -2/+2 | |
