| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2011-05-23 | Typecheck @[] correctly | Tim Chevalier | -0/+25 | |
| Previously, if you wrote let @vec[int] foo = @[]; that would be a type error. That didn't seem right, so I changed pushdown to unify the inner type in an unop application with the argument type of the operator type. | ||||
| 2011-05-23 | rustc: Run the llvm verifier pass before optimization. Closes #376 | Brian Anderson | -0/+4 | |
| The optimization passes were hiding some codegen errors so now we run the verifier both before and after optimization. | ||||
| 2011-05-23 | Get test-pass/utf8.rs to run | Marijn Haverbeke | -44/+25 | |
| This involved a small fix to the unicode-escape character lexing and to the pretty-printer. | ||||
| 2011-05-23 | Add line breaks to typestate error messages | Tim Chevalier | -4/+4 | |
| 2011-05-22 | rustc: More cleanup of rustc.rs | Brian Anderson | -65/+61 | |
| 2011-05-22 | rustc: Some refactoring of rustc.rs | Brian Anderson | -46/+63 | |
| 2011-05-22 | rustc: Cleanup formatting in rustc.rs | Brian Anderson | -16/+12 | |
| 2011-05-21 | rustc: Add a FIXME to expr_alt type checking | Brian Anderson | -0/+2 | |
| 2011-05-21 | rustc: Remove unnecessary pushdown from check_expr in the expr_if case | Brian Anderson | -12/+7 | |
| 2011-05-21 | rustc: If all if branches are _|_, then the entire if is _|_ | Brian Anderson | -3/+1 | |
| 2011-05-21 | rustc: Remove outdated comment | Brian Anderson | -2/+0 | |
| 2011-05-21 | rustc: Allow if expressions to fail | Brian Anderson | -14/+31 | |
| 2011-05-21 | rustc: Allow alt expressions to fail | Brian Anderson | -3/+9 | |
| 2011-05-21 | rustc: Assign ty_bot to nodes in write::bot_ty. Remove FIXME | Brian Anderson | -2/+1 | |
| 2011-05-21 | rustc: Blocks shouldn't try to return results for ty_bot | Brian Anderson | -1/+2 | |
| 2011-05-20 | Correctly check that ! functions always diverge | Tim Chevalier | -2/+40 | |
| Also make _|_ unify with any type. | ||||
| 2011-05-20 | rustc: Don't write metadata for unexported items | Brian Anderson | -1/+4 | |
| 2011-05-20 | Merge remote-tracking branch 'graydon/master' into typestate_4 | Tim Chevalier | -28/+252 | |
| 2011-05-20 | Error instead of warning for missing returns. Huzzah! | Tim Chevalier | -4/+2 | |
| 2011-05-20 | Annotate erroring functions in session and parser | Tim Chevalier | -9/+9 | |
| 2011-05-20 | More work on anonymous objects. | Lindsey Kuper | -28/+252 | |
| 2011-05-20 | Change node_ann hash table to a vector in typestate | Tim Chevalier | -12/+31 | |
| 2011-05-20 | rm unnecessary logging | Tim Chevalier | -9/+1 | |
| 2011-05-20 | rm unused import | Tim Chevalier | -1/+0 | |
| 2011-05-20 | Add a "fail" after a while(true) loop in two places | Tim Chevalier | -2/+2 | |
| (in preparation for changing the "function may not return" warning to an error) | ||||
| 2011-05-20 | Make controlflow part of a function type | Tim Chevalier | -121/+213 | |
| Change ty_fn to have a controlflow field. A 'controlflow' is essentially a bit of data that says whether or not this function never returns to the caller (if it never returns, that means it calls "fail" or another "never-returns" function on every control path). Also add syntax for annotating functions that never return: fn foo() -> ! { fail; } for example. Functions marked with ! implicitly have a result type of ty_bot, which is a new type that this commit also adds. | ||||
| 2011-05-20 | Using the right mode... | Eric Holk | -1/+1 | |
| 2011-05-20 | Translated start_task, but it fails on spp == align_down(spp) | Eric Holk | -2/+54 | |
| 2011-05-20 | Called the new_task upcall. There are refcount issues though. | Eric Holk | -2/+24 | |
| 2011-05-20 | Nicer printer of LLVM array types. | Eric Holk | -1/+4 | |
| 2011-05-20 | A little closure towards translating spawn. We're about ready to do the ↵ | Eric Holk | -4/+47 | |
| upcall, except that rustc segfaults. | ||||
| 2011-05-20 | Added some comments to trans_spawn that sort of explains what needs to happen | Eric Holk | -1/+15 | |
| 2011-05-20 | Started working on translating spawn. It correctly generates the task name ↵ | Eric Holk | -1/+41 | |
| in the case that it is not provided. | ||||
| 2011-05-20 | Options fix from erickt. | Graydon Hoare | -1/+1 | |
| 2011-05-20 | Twiddle glue inlining heuristics. ~10% win on build time. | Graydon Hoare | -9/+25 | |
| 2011-05-20 | Elide a bunch of do-nothing take glue. | Graydon Hoare | -1/+1 | |
| 2011-05-20 | Remove redundant secondary declaration of glue. | Graydon Hoare | -12/+0 | |
| 2011-05-20 | rustc: Move the interner to a new module intended to be used for general ↵ | Patrick Walton | -50/+52 | |
| data structures | ||||
| 2011-05-19 | rustc: Translate else if blocks the same as other blocks. Closes #388 | Brian Anderson | -9/+12 | |
| 2011-05-19 | rustc: Find the correct outer scope in trans_block | Brian Anderson | -1/+5 | |
| 2011-05-19 | Revert 106216d67358f13f4be296ee59f711a1f1566bbe. | Rafael Ávila de Espíndola | -39/+14 | |
| This depends on llvm's 131294. | ||||
| 2011-05-19 | After all that, give up on "complex" version of type_has_pointers and just ↵ | Graydon Hoare | -59/+64 | |
| manually inspect. Can't calculate property during interning. | ||||
| 2011-05-19 | Move the ty_item_table into ty::ctxt.items, move variant_info to ty, and ↵ | Graydon Hoare | -282/+296 | |
| start sketching the contains_pointer property on types. | ||||
| 2011-05-19 | Remove type_glue.rs, don't think it's going to work. | Graydon Hoare | -105/+0 | |
| 2011-05-19 | rustc: Unify variables using a single type instead of keeping a list and ↵ | Patrick Walton | -44/+106 | |
| doing it all at the end. This will give us better error messages. | ||||
| 2011-05-19 | Move type cache and node type table into type context. | Graydon Hoare | -367/+270 | |
| 2011-05-19 | Finish name collision testing. | Marijn Haverbeke | -8/+131 | |
| And fix a the single screw-up in the source code it caught. | ||||
| 2011-05-19 | OptLevel changes. Accepts levels 0 to 3 only. '-O' is synonym for --OptLevel=2. | Graydon Hoare | -18/+55 | |
| 2011-05-19 | No functional change. Largely removed the native module/non-native module ↵ | Paul Stansifer | -85/+45 | |
| distinction from resolve.rs | ||||
| 2011-05-19 | Typestate checking code no longer uses fold -- only walk. | Tim Chevalier | -43/+12 | |
