| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fix a typo in the documentation. | Ralph Giles | 2011-05-01 | 1 | -1/+1 |
| | | |||||
| * | rustc: Run scope cleanups in the implicit block created by log statements. ↵ | Patrick Walton | 2011-04-29 | 1 | -14/+18 |
| | | | | | Fixes a leak. | ||||
| * | rustc: Add constants for LLVM function attributes | Patrick Walton | 2011-04-29 | 1 | -0/+24 |
| | | |||||
| * | rustc: Emit pure native glue; we don't call it yet | Patrick Walton | 2011-04-29 | 3 | -20/+50 |
| | | |||||
| * | rustc: Start threading a purity flag through upcalls | Patrick Walton | 2011-04-29 | 1 | -20/+26 |
| | | |||||
| * | Temporarily disable dtors; they broke self-hosting. | Graydon Hoare | 2011-04-29 | 1 | -1/+3 |
| | | |||||
| * | rustc: First steps to determine whether tydescs escape | Patrick Walton | 2011-04-29 | 1 | -17/+30 |
| | | |||||
| * | Don't emit metadata unless compiling -shared. | Graydon Hoare | 2011-04-29 | 2 | -5/+8 |
| | | |||||
| * | Implement destructors in rustc | Marijn Haverbeke | 2011-04-29 | 2 | -40/+61 |
| | | | | | | | Unlike rustboot, rustc keeps it destructors in vtables. Entry 0 holds either the destructor for the obj or a NULL pointer. The method offsets start at 1. | ||||
| * | rustc: Temporarily add a switch and a corresponding makefile variable to ↵ | Patrick Walton | 2011-04-29 | 1 | -5/+12 |
| | | | | | disable typestate | ||||
| * | rustc: Add a --time-passes option | Patrick Walton | 2011-04-29 | 2 | -14/+42 |
| | | |||||
| * | rustc: Handle alias parameters in native functions properly | Patrick Walton | 2011-04-29 | 1 | -14/+20 |
| | | |||||
| * | rustc: Remove the wrong-compiler warning; we're self-hosting now. | Patrick Walton | 2011-04-29 | 1 | -12/+1 |
| | | |||||
| * | Intern metadata while writing, shrink stage1 from 12mb to 5.7mb. | Graydon Hoare | 2011-04-29 | 4 | -94/+224 |
| | | |||||
| * | rustc: Fix vec append glue for strings. Add a test case. | Patrick Walton | 2011-04-28 | 1 | -5/+8 |
| | | |||||
| * | rustc: Add some value names to the vec append glue function. Un-XFAIL ↵ | Patrick Walton | 2011-04-28 | 1 | -0/+6 |
| | | | | | vec-growth.rs. | ||||
| * | More attempts at fixing broken vec-append glue. | Graydon Hoare | 2011-04-28 | 1 | -3/+3 |
| | | |||||
| * | Make the no-growth path (previously never exercised) in rustc *work*. | Graydon Hoare | 2011-04-28 | 1 | -2/+1 |
| | | |||||
| * | Actually hit the no-growth path on vec-append. | Graydon Hoare | 2011-04-28 | 1 | -2/+12 |
| | | |||||
| * | Consider unop deref as an lval. Un-XFAIL vec-push. | Graydon Hoare | 2011-04-28 | 1 | -0/+1 |
| | | |||||
| * | rustc: Only use color if it's supported | Patrick Walton | 2011-04-28 | 1 | -2/+10 |
| | | |||||
| * | Drop args in native stubs too. | Graydon Hoare | 2011-04-28 | 1 | -0/+11 |
| | | |||||
| * | Enable typestate_check | Tim Chevalier | 2011-04-28 | 1 | -2/+1 |
| | | | | | This was supposed to be in a previous commit. I don't know what happened. | ||||
| * | Add a session field to ty_ctxt and change an err to span_err | Tim Chevalier | 2011-04-28 | 3 | -12/+18 |
| | | | | | | | | I changed instantiate to print out a more helpful error message, which required passing it a session argument. To avoid threading extra arguments through a lot of functions, I added a session field to ty_ctxt. | ||||
| * | Reindented things and removed superfluous comments, nothing to see here | Tim Chevalier | 2011-04-28 | 1 | -14/+7 |
| | | |||||
| * | Fix some nested patterns in rustc | Tim Chevalier | 2011-04-28 | 1 | -0/+2 |
| | | | | | | | In rustc, nested patterns were potentially matching when they shouldn't match, because a loop index wasn't being incremented. Fixed it and added one test case. | ||||
| * | Fix bug in handling of expr_alt (postcond for alts was being intersected ↵ | Tim Chevalier | 2011-04-28 | 1 | -52/+102 |
| | | | | | with postcond for scrutinee) | ||||
| * | Fixed bug in typeck that wasn't filling in anns for stmts | Tim Chevalier | 2011-04-28 | 3 | -8/+39 |
| | | | | | | | | (needed for typestate_check). Also changed a (log; fail) to (log_err; fail) in typestate_check, and added some more logging funs in util.common. | ||||
| * | Support all expression forms in typestate | Tim Chevalier | 2011-04-28 | 2 | -12/+230 |
| | | | | | | | | | | | | | Added support for self_method, cont, chan, port, recv, send, be, do_while, spawn, and ext; handled break and cont correctly. (However, there are no non-xfailed test cases for ext or spawn in stage0 currently.) Although the standard library compiles and all test cases pass with typestate enabled, I left typestate checking disabled as rustc terminates abnormally when building the standard library if so, even though it does generate code correctly. | ||||
| * | Further work on typestate_check | Tim Chevalier | 2011-04-28 | 3 | -131/+426 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lots of work on typestate_check, seems to get a lot of the way through checking the standard library. * Added for, for_each, assign_op, bind, cast, put, check, break, and cont. (I'm not sure break and cont are actually handled correctly.) * Fixed side-effect bug in seq_preconds so that unioning the preconditions of a sequence of statements or expressions is handled correctly. * Pass poststate correctly through a stmt_decl. * Handle expr_ret and expr_fail properly (after execution of a ret or fail, everything is true -- this is needed to handle ifs and alts where one branch is a ret or fail) * Fixed bug in set_prestate_ann where a thing that needed to be mutated wasn't getting passed as an alias * Fixed bug in how expr_alt was treated (zero is not the identity for intersect, who knew, right?) * Update logging to reflect log_err vs. log * Fixed find_locals so as to return all local decls and exclude function arguments. * Make union_postconds work on an empty vector (needed to handle empty blocks correctly) * Added _vec.cat_options, which takes a list of option[T] to a list of T, ignoring any Nones * Added two test cases. | ||||
| * | Add a very minimal set of .cfi_* statements to get part of backtraces | Rafael Ávila de Espíndola | 2011-04-28 | 1 | -2/+34 |
| | | | | | | | | | | | | | | | | | | working (on hello world at least): ~/inst/gdb/bin/gdb --args ./foo (gdb) b write ... (gdb) r ... Breakpoint 1, 0xf7f04270 in write () from /lib32/libc.so.6 (gdb) bt 0 0xf7f04270 in write () from /lib32/libc.so.6 1 0x0804931a in rust_native_cdecl_3 () 2 0x080487d7 in _rust_wrapper3_ () 3 0x0804890a in _rust_fn5_main () 4 0x08049440 in rust_native_cdecl_7 () | ||||
| * | Actually perform take/drop on args (oh my!) | Graydon Hoare | 2011-04-28 | 1 | -4/+36 |
| | | |||||
| * | rustc: Joseph and the Amazing Technicolor Error Messages | Patrick Walton | 2011-04-28 | 1 | -21/+20 |
| | | |||||
| * | Use cnames when present in ty.ty_to_str. | Graydon Hoare | 2011-04-27 | 1 | -10/+10 |
| | | |||||
| * | Cache sha1 values of types, use seq-based mangling for glue as it's private ↵ | Graydon Hoare | 2011-04-27 | 1 | -10/+17 |
| | | | | | anyways. | ||||
| * | Partly disable simplified-type glue optimization due to compile-time cost. | Graydon Hoare | 2011-04-27 | 1 | -1/+11 |
| | | |||||
| * | rustc: Ignore the return value of native functions that return nil. stage1 ↵ | Patrick Walton | 2011-04-26 | 1 | -1/+10 |
| | | | | | can build libstd now, though it leaks. | ||||
| * | rustc: Actually write the optimized bitcode when --save-temps is on | Patrick Walton | 2011-04-26 | 1 | -12/+13 |
| | | |||||
| * | Support octal #fmt conversions | Brian Anderson | 2011-04-26 | 1 | -0/+7 |
| | | |||||
| * | Speed up calls to get_tydesc and kill cname-redundant glue generation. | Graydon Hoare | 2011-04-26 | 1 | -16/+29 |
| | | |||||
| * | Merge branch 'master' of ssh://github.com/graydon/rust | Graydon Hoare | 2011-04-26 | 2 | -125/+81 |
| |\ | |||||
| | * | rustc: Cap ridiculous type name sizes | Patrick Walton | 2011-04-26 | 1 | -1/+3 |
| | | | |||||
| | * | Change rustc to use GetOpts rather than ad-hoc command-line parsing | Marijn Haverbeke | 2011-04-26 | 1 | -124/+78 |
| | | | | | | | | | | | NOTE: all 'long' parameters now use a double dash, so --shared, rather than gcc-style -shared. | ||||
| * | | Various bits of trans lint, nothing major. | Graydon Hoare | 2011-04-26 | 1 | -25/+36 |
| |/ | |||||
| * | rustc: Add a missing return value to Collect.ty_of_item() | Patrick Walton | 2011-04-25 | 1 | -1/+3 |
| | | |||||
| * | A little more guarding against wasted work in ty, typeck. | Graydon Hoare | 2011-04-25 | 2 | -2/+19 |
| | | |||||
| * | rustc: Use the abbreviated type names to avoid LLVM bitcode size explosion | Patrick Walton | 2011-04-25 | 3 | -5/+11 |
| | | |||||
| * | Kick ty_var and ty_local entries out of the type store. Pre-compute presence ↵ | Graydon Hoare | 2011-04-25 | 2 | -72/+183 |
| | | | | | of var, local, param and bound_params in types. | ||||
| * | rustc: Add a -save-temps option to save bitcode and write output ↵ | Patrick Walton | 2011-04-25 | 2 | -11/+64 |
| | | | | | simultaneously; document command line switches | ||||
| * | rustc: Pass a "type context" around instead of directly passing the type ↵ | Patrick Walton | 2011-04-25 | 7 | -833/+786 |
| | | | | | store; prep for removing type annotations | ||||