| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Support all expression forms in typestate | Tim Chevalier | 2011-04-28 | 2 | -0/+44 |
| | | | | | | | | | | | | | 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. | ||||
| * | Handle nested items correctly in typestate_check | Tim Chevalier | 2011-04-19 | 1 | -0/+12 |
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary says it all. Actually, only nested objects and functions are handled, but that's better than before. The fold that I was using before to traverse a crate wasn't working correctly, because annotations have to reflect the number of local variables of the nearest enclosing function (in turn, because annotations are represented as bit vectors). The fold was traversing the AST in the wrong order, first filling in the annotations correctly, but then re-traversing them with the bit vector length for any outer nested functions, and so on. Remedying this required writing a lot of tedious boilerplate code because I scrapped the idea of using a fold altogether. I also made typestate_check handle unary, field, alt, and fail. Also, some miscellaneous changes: * added annotations to blocks in typeck * fix pprust so it can handle spawn * added more logging functions in util.common * fixed _vec.or * added maybe and from_maybe in option * removed fold_block field from ast_fold, since it was never used | ||||
| * | Remove effect system from src. | Graydon Hoare | 2011-04-19 | 1 | -21/+0 |
| | | |||||
| * | Implement the "attempted dynamic environment-capture" error in rustc. | Rafael Ávila de Espíndola | 2011-04-11 | 2 | -0/+30 |
| | | |||||
| * | Disable effect checking in rustboot | Marijn Haverbeke | 2011-04-08 | 6 | -52/+0 |
| | | |||||
| * | Beginnings of support for magical self prefix; nothing profound happening yet. | Lindsey Kuper | 2011-03-29 | 1 | -0/+13 |
| | | |||||
| * | Switch xfail system to use comments embedded in source files. | Graydon Hoare | 2011-03-25 | 51 | -0/+55 |
| | | |||||
| * | Teach rustc about reserved keywords | Brian Anderson | 2011-02-22 | 7 | -0/+35 |
| | | |||||
| * | Cleanup for 'be' statement and comments about future typestate | Brian Anderson | 2011-02-10 | 2 | -2/+2 |
| | | |||||
| * | Add compile-fail tests for tail calls | Brian Anderson | 2011-02-10 | 2 | -0/+23 |
| | | |||||
| * | Reenable xfailed tests for rustboot that pass with trivial or no modifications | Brian Anderson | 2011-01-30 | 1 | -1/+1 |
| | | |||||
| * | Fix test now that we look at the full error-pattern. Also enable it for rustc. | Rafael Ávila de Espíndola | 2011-01-26 | 1 | -1/+1 |
| | | |||||
| * | Print an error if we try to refer to a module in an expr_path. | Rafael Ávila de Espíndola | 2011-01-25 | 1 | -0/+10 |
| | | |||||
| * | Small first step in expr_path. Call find_final_def just to detect | Rafael Ávila de Espíndola | 2011-01-25 | 1 | -0/+8 |
| | | | | | | unresolved names. find_final_def is going to be extended to return the final expr. | ||||
| * | Enable more tests. | Rafael Ávila de Espíndola | 2011-01-17 | 1 | -1/+1 |
| | | |||||
| * | Fix the import handling in "complex" cases. When looking a.b.c and 'a' is a | Rafael Ávila de Espíndola | 2011-01-14 | 1 | -0/+8 |
| | | | | | | | | module, we should look for 'b' *just* in the module 'a' and then continue resolving b.c in the environment created by updating *with* a. Still not 100% correct, but getting there. | ||||
| * | Produce better errors for invalid imports. | Rafael Ávila de Espíndola | 2011-01-12 | 1 | -0/+6 |
| | | |||||
| * | Fix two invalid import cases we were not detecting: | Rafael Ávila de Espíndola | 2011-01-11 | 2 | -0/+23 |
| | | | | | | | | * If an import was unused we would never print any errors for it. * We would keep the existing environment in scope when descending 'foo.bar' and would find 'bar' in the global environment if there was no 'bar' in 'foo'. | ||||
| * | Further corrections to the Makefile rules covering failing tests. | Graydon Hoare | 2011-01-10 | 8 | -6/+22 |
| | | |||||
| * | Add a check for binding an alias. Good thing, as we had two instances in our ↵ | Graydon Hoare | 2010-11-08 | 1 | -0/+7 |
| | | | | | library. | ||||
| * | First pass on splitting stratum and opacity off of effects. WIP. | Graydon Hoare | 2010-11-02 | 4 | -5/+5 |
| | | |||||
| * | Typecheck tags in "alt" patterns | Patrick Walton | 2010-10-14 | 2 | -0/+24 |
| | | |||||
| * | Closed issue 154 - prevents compiler from compiliing a line to zero statements | Or Brostovski | 2010-09-30 | 1 | -0/+7 |
| | | |||||
| * | Bind pattern slots with ?, drop parens from 0-ary tag constructors, ↵ | Graydon Hoare | 2010-09-20 | 1 | -2/+2 |
| | | | | | translate 0-ary constructors as constants. Rustc loses ~300kb. | ||||
| * | Check for infinitely sized tags. Un-XFAIL ↵ | Patrick Walton | 2010-09-16 | 1 | -2/+5 |
| | | | | | test/compile-fail/infinite-tag-type-recursion.rs. | ||||
| * | Modified parser to handle alt type andadded a few tests | Or Brostovski | 2010-08-21 | 1 | -0/+6 |
| | | | | | | | | | | | | | ast.ml - modified arm types for easier polymorphism - fixed a bug in fmt_type_arm dead.ml - modified arm types for easier polymorphism common.ml - added 'either' - added some useful auxiliary functions item.ml - modified arm code to be more polymorphic and handle both alt-tag and alt-type, also fixed the problematic case in bad-alt.rs Makefile - added XFAIL for new alt-type test bad-alt.rs - added test for invalid alt syntax alt-type-simple.rs - added simple test for alt type | ||||
| * | Fix some naughtiness of handling newlines in bracequotes and multi-line ↵ | Graydon Hoare | 2010-08-03 | 1 | -0/+10 |
| | | | | | comments. Closes #142. | ||||
| * | Improve mutability checking. Closes #118. | Graydon Hoare | 2010-07-23 | 5 | -1/+24 |
| | | |||||
| * | Add test for writing-through-uninit bug (reported on IRC by jrmuizel), plus ↵ | Graydon Hoare | 2010-07-23 | 1 | -0/+10 |
| | | | | | fix in typestate system. | ||||
| * | Add a test for an obvious-seeming (but not actually legal) kind of cast ↵ | Graydon Hoare | 2010-07-19 | 1 | -0/+13 |
| | | | | | attempted in issue #115, downgrade bug to an err in type.ml so you get a better message. | ||||
| * | Fix over-optimistic resolution of self-methods within obj scopes. There is ↵ | Graydon Hoare | 2010-07-19 | 1 | -0/+11 |
| | | | | | no such feature in the language at present. Add test to prevent regression. Closes #114. | ||||
| * | Missing semicolon in type.ml, plus test to catch regression. Closes #113. | Graydon Hoare | 2010-07-19 | 1 | -0/+7 |
| | | |||||
| * | Ensure that functions that should return a value do; issue 41 | Patrick Walton | 2010-07-16 | 2 | -0/+10 |
| | | |||||
| * | Implement the "simple typechecker", which avoids HM inference | Patrick Walton | 2010-07-15 | 1 | -2/+2 |
| | | |||||
| * | Remove log-type-error; everything is loggable. | Patrick Walton | 2010-07-15 | 1 | -6/+0 |
| | | |||||
| * | Fix ret/put mis-identification in typechecker. Closes #87. | Graydon Hoare | 2010-07-14 | 1 | -0/+8 |
| | | |||||
| * | Catch cyclic imports harder. Add 2 tests to confirm. | Graydon Hoare | 2010-07-09 | 2 | -0/+20 |
| | | |||||
| * | Issue 66: Multi-line comments | Matt Brubeck | 2010-07-08 | 1 | -0/+9 |
| | | |||||
| * | Some more typestate tests. | Graydon Hoare | 2010-07-08 | 3 | -4/+28 |
| | | |||||
| * | Numerous bug fixes to typestate algorithm. | Graydon Hoare | 2010-07-06 | 1 | -0/+14 |
| | | |||||
| * | Fix compile-fail/log-type-error.rs. | Graydon Hoare | 2010-07-04 | 1 | -1/+1 |
| | | |||||
| * | Only translate or dwarf-emit items or stubs locally defined or used. Avoids ↵ | Graydon Hoare | 2010-06-27 | 1 | -1/+1 |
| | | | | | instantiating O(sizeof(standard-library)) worth of imports stubs on each 'use std'. Closes issue 13. | ||||
| * | Add testcases for item name conflict at the same path level. | Roy Frostig | 2010-06-25 | 1 | -0/+8 |
| | | |||||
| * | A couple new tests for broken parts of the typechecker, XFAILed. | Graydon Hoare | 2010-06-24 | 2 | -0/+10 |
| | | |||||
| * | Populate tree. | Graydon Hoare | 2010-06-23 | 35 | -0/+358 |