- 18 5月, 2011 3 次提交
-
-
由 Eric Holk 提交于
-
由 Patrick Walton 提交于
-
由 Marijn Haverbeke 提交于
Except for _task, which is still a keyword.
-
- 17 5月, 2011 4 次提交
-
-
由 Graydon Hoare 提交于
-
由 Tim Chevalier 提交于
* Reorganized typestate into several modules. * Made typestate check that any function with a non-nil return type returns a value. For now, the check is a warning and not an error (see next item). * Added a "bot" type (prettyprinted as _|_), for constructs like be, ret, break, cont, and fail that don't locally return a value that can be inspected. "bot" is distinct from "nil". There is no concrete syntax for _|_, while the concrete syntax for the nil type is (). * Added support to the parser for a ! annotation on functions whose result type is _|_. Such a function is required to have either a fail or a call to another ! function that is reached in all control flow paths. The point of this annotation is to mark functions like unimpl() and span_err(), so that an alt with a call to err() in one case isn't a false positive for the return-value checker. I haven't actually annotated anything with it yet. * Random bugfixes: * * Fixed bug in trans::trans_binary that was throwing away the cleanups for nested subexpressions of an and or or (tests: box-inside-if and box-inside-if2). ** In typeck, unify the expected type arguments of a tag with the actual specified arguments.
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
- 15 5月, 2011 1 次提交
-
-
由 Brian Anderson 提交于
-
- 14 5月, 2011 10 次提交
-
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
由 Lindsey Kuper 提交于
-
由 Lindsey Kuper 提交于
Still segfaulting on the method-overriding.rs test, though.
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
- 13 5月, 2011 6 次提交
-
-
由 Marijn Haverbeke 提交于
The type/value namespace distinction pretty much works now. Module namespace is up next.
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
由 Marijn Haverbeke 提交于
This should be a snapshot transition.
-
由 Marijn Haverbeke 提交于
This will need to be a snapshot.
-
- 12 5月, 2011 6 次提交
-
-
由 Marijn Haverbeke 提交于
One step closer to removing fold and having a single, immutable AST. Resolve still uses fold, because it has to detect and transform expr_field expressions. If we go through on our plan of moving to a different syntax for module dereferencing, the parser can spit out expr_field expressions, and resolve can move to walk. (I am truly sorry for the things I did in typestate_check.rs. I expect we'll want to change that to walk as well in the near future, at which point it should probably pass around a context record, which could hold the def_map.)
-
由 Marijn Haverbeke 提交于
This way, the tag assigned by the parser stays with the node. I realize ann replacing is probably going away real soon, but I needed this now for moving the resolve defs out of the AST.
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
rustc: Remove a few kludges intended to work around rustboot's lack of structural comparison from equal_type_structures()
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
- 11 5月, 2011 3 次提交
-
-
由 Patrick Walton 提交于
rustc: Lower the size limit on ty_to_short_str() and always call it in favor of direct calls to metadata.Encode.ty_str() in trans
-
由 Patrick Walton 提交于
-
由 Patrick Walton 提交于
-
- 10 5月, 2011 4 次提交
-
-
由 Graydon Hoare 提交于
-
由 Patrick Walton 提交于
rustc: Alias fix part 2 -- Check that the aliasness of function parameters matches. Add a test case.
-
由 Graydon Hoare 提交于
-
由 Patrick Walton 提交于
rustc: Alias fix part 1 -- Separate out AST modes from typechecker modes, and introduce an "either value or alias" mode
-
- 07 5月, 2011 1 次提交
-
-
由 Marijn Haverbeke 提交于
(Have fun mergining your stuff with this.)
-
- 06 5月, 2011 2 次提交
-
-
由 Lindsey Kuper 提交于
-
由 Patrick Walton 提交于
-