aboutsummaryrefslogtreecommitdiff
path: root/src/test/compile-fail
Commit message (Collapse)AuthorAgeFilesLines
* Support all expression forms in typestateTim Chevalier2011-04-282-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_checkTim Chevalier2011-04-191-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 Hoare2011-04-191-21/+0
|
* Implement the "attempted dynamic environment-capture" error in rustc.Rafael Ávila de Espíndola2011-04-112-0/+30
|
* Disable effect checking in rustbootMarijn Haverbeke2011-04-086-52/+0
|
* Beginnings of support for magical self prefix; nothing profound happening yet.Lindsey Kuper2011-03-291-0/+13
|
* Switch xfail system to use comments embedded in source files.Graydon Hoare2011-03-2551-0/+55
|
* Teach rustc about reserved keywordsBrian Anderson2011-02-227-0/+35
|
* Cleanup for 'be' statement and comments about future typestateBrian Anderson2011-02-102-2/+2
|
* Add compile-fail tests for tail callsBrian Anderson2011-02-102-0/+23
|
* Reenable xfailed tests for rustboot that pass with trivial or no modificationsBrian Anderson2011-01-301-1/+1
|
* Fix test now that we look at the full error-pattern. Also enable it for rustc.Rafael Ávila de Espíndola2011-01-261-1/+1
|
* Print an error if we try to refer to a module in an expr_path.Rafael Ávila de Espíndola2011-01-251-0/+10
|
* Small first step in expr_path. Call find_final_def just to detectRafael Ávila de Espíndola2011-01-251-0/+8
| | | | | unresolved names. find_final_def is going to be extended to return the final expr.
* Enable more tests.Rafael Ávila de Espíndola2011-01-171-1/+1
|
* Fix the import handling in "complex" cases. When looking a.b.c and 'a' is aRafael Ávila de Espíndola2011-01-141-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índola2011-01-121-0/+6
|
* Fix two invalid import cases we were not detecting:Rafael Ávila de Espíndola2011-01-112-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 Hoare2011-01-108-6/+22
|
* Add a check for binding an alias. Good thing, as we had two instances in our ↵Graydon Hoare2010-11-081-0/+7
| | | | library.
* First pass on splitting stratum and opacity off of effects. WIP.Graydon Hoare2010-11-024-5/+5
|
* Typecheck tags in "alt" patternsPatrick Walton2010-10-142-0/+24
|
* Closed issue 154 - prevents compiler from compiliing a line to zero statementsOr Brostovski2010-09-301-0/+7
|
* Bind pattern slots with ?, drop parens from 0-ary tag constructors, ↵Graydon Hoare2010-09-201-2/+2
| | | | translate 0-ary constructors as constants. Rustc loses ~300kb.
* Check for infinitely sized tags. Un-XFAIL ↵Patrick Walton2010-09-161-2/+5
| | | | test/compile-fail/infinite-tag-type-recursion.rs.
* Modified parser to handle alt type andadded a few testsOr Brostovski2010-08-211-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 Hoare2010-08-031-0/+10
| | | | comments. Closes #142.
* Improve mutability checking. Closes #118.Graydon Hoare2010-07-235-1/+24
|
* Add test for writing-through-uninit bug (reported on IRC by jrmuizel), plus ↵Graydon Hoare2010-07-231-0/+10
| | | | fix in typestate system.
* Add a test for an obvious-seeming (but not actually legal) kind of cast ↵Graydon Hoare2010-07-191-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 Hoare2010-07-191-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 Hoare2010-07-191-0/+7
|
* Ensure that functions that should return a value do; issue 41Patrick Walton2010-07-162-0/+10
|
* Implement the "simple typechecker", which avoids HM inferencePatrick Walton2010-07-151-2/+2
|
* Remove log-type-error; everything is loggable.Patrick Walton2010-07-151-6/+0
|
* Fix ret/put mis-identification in typechecker. Closes #87.Graydon Hoare2010-07-141-0/+8
|
* Catch cyclic imports harder. Add 2 tests to confirm.Graydon Hoare2010-07-092-0/+20
|
* Issue 66: Multi-line commentsMatt Brubeck2010-07-081-0/+9
|
* Some more typestate tests.Graydon Hoare2010-07-083-4/+28
|
* Numerous bug fixes to typestate algorithm.Graydon Hoare2010-07-061-0/+14
|
* Fix compile-fail/log-type-error.rs.Graydon Hoare2010-07-041-1/+1
|
* Only translate or dwarf-emit items or stubs locally defined or used. Avoids ↵Graydon Hoare2010-06-271-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 Frostig2010-06-251-0/+8
|
* A couple new tests for broken parts of the typechecker, XFAILed.Graydon Hoare2010-06-242-0/+10
|
* Populate tree.Graydon Hoare2010-06-2335-0/+358