Michael Sullivan
2b70cbc992
Remove some dead code from rust_shape
2012-06-15 17:42:48 -07:00
Tim Chevalier
f0d8e978a9
Add test for #2633 . Xfailed.
2012-06-15 17:33:35 -07:00
Michael Sullivan
6e63e2fd5f
Fix copying of fixed length vectors. Closes #2630 .
2012-06-15 15:31:19 -07:00
Michael Sullivan
a56902304d
Make fixed length vecs implicitly copyable. Clean up some other kind code. Closes #2629
2012-06-15 15:31:19 -07:00
Michael Sullivan
999ab5418a
Make the shape interpreter actually advance past fixed length vectors. Closes #2613 .
2012-06-15 15:31:19 -07:00
Tim Chevalier
210db7d8d4
Test case for #2631
2012-06-15 15:21:17 -07:00
Tim Chevalier
093faaabe1
Handle index expressions' callee IDs correctly
...
Some code that handles unary and binary exprs' callee IDs was
forgetting to handle the index expr case (since calls to
user-defined index operators also have callee IDs). This was
manifesting as an ICE in trans because when monomorphizing a
function that had one of these operators in it (an index into a
dvec, in the test case), the callee ID would be unbound to a type.
Fixed it. Closes #2631 .
2012-06-15 15:21:17 -07:00
Lindsey Kuper
7a253eabce
Add an intermediate level of type/region variable resolution forcing
...
And change structurally_resolved_type() to force resolution of
non-region variables.
2012-06-15 12:54:44 -07:00
Paul Stansifer
047e3c45b3
Lexers now emit spans, not chposes.
2012-06-15 12:41:41 -07:00
Paul Stansifer
d6522ab2d3
Beginning of support for interpolation into token trees.
2012-06-15 12:41:41 -07:00
Paul Stansifer
d906fba636
Make token tree lexers and their stacks unique.
2012-06-15 12:41:41 -07:00
Paul Stansifer
d03c04b6ea
Make tt lexers duplicatible.
2012-06-15 12:41:41 -07:00
Paul Stansifer
2f8be7dcbb
Bugfix: obey the tt_lexer's own invariants.
2012-06-15 12:41:41 -07:00
Paul Stansifer
1e36d216be
Add the interner to parse_sess.
2012-06-15 12:41:41 -07:00
Paul Stansifer
85ded92736
Make it possible to make tt_reader-based parsers.
2012-06-15 12:41:41 -07:00
Paul Stansifer
d619e8995f
Make token trees re-lexable.
2012-06-15 12:41:41 -07:00
Paul Stansifer
1d25981c73
Formatting fixup in parser.rs
2012-06-15 12:41:41 -07:00
Paul Stansifer
32167f52b0
Pull out an interface for the lexer.
2012-06-15 12:41:41 -07:00
Paul Stansifer
473b1ec0a0
Make token trees parseable.
2012-06-15 12:41:41 -07:00
Patrick Walton
b6ed1de29e
Issue #2591 : Change "upvar" to "variable declared in an outer block" in tests
2012-06-15 12:24:12 -07:00
Michael Sullivan
68670f631c
Make type_is_pod handle more types.
2012-06-15 11:48:04 -07:00
Niko Matsakis
e6c613ffa5
remove irrelevant fixme ( #2607 )
2012-06-15 06:24:52 -07:00
Patrick Walton
5151c08850
Issue #2591 : Fix "upvar" jargon in borrowck error messages
2012-06-14 23:18:09 -07:00
Eric Holk
7b98fdd269
Merge branch 'incoming' of github.com:mozilla/rust into newsnap
2012-06-14 21:08:06 -07:00
Lindsey Kuper
e3f73e443e
Tests for #1425 (xfail'd for now)
2012-06-14 21:04:53 -07:00
Eric Holk
56bd689767
Merge branch 'incoming' of github.com:mozilla/rust into newsnap
2012-06-14 21:03:41 -07:00
Eric Holk
8ab15c0266
Merge branch 'incoming' into newsnap
2012-06-14 20:36:16 -07:00
Lindsey Kuper
77e6573929
Further work on integer literal suffix inference ( #1425 )
...
In this commit:
* Change the lit_int_unsuffixed AST node to not carry a type, since
it doesn't need one
* Don't print "(unsuffixed)" when pretty-printing unsuffixed integer
literals
* Just print "I" instead of "(integral)" for integral type variables
* Set up trans to use the information that will be gathered during
typeck to construct the appropriate constants for unsuffixed int
literals
* Add logic for handling int_ty_sets in typeck::infer
* Clean up unnecessary code in typeck::infer
* Add missing mk_ functions to middle::ty
* Add ty_var_integral to a few of the type utility functions it was
missing from in middle::ty
2012-06-14 20:24:36 -07:00
Graydon Hoare
d953462d03
Complete a data visitor type that does proper pointer-walking.
2012-06-14 19:58:34 -07:00
Eric Holk
d4b6898958
Correctly registering snapshot
2012-06-14 19:39:39 -07:00
Eric Holk
52c38ba886
Merge branch 'incoming' into newsnap
2012-06-14 19:36:22 -07:00
Eric Holk
e5dea14122
Registering snapshot
2012-06-14 19:34:40 -07:00
Tim Chevalier
a214e3abd2
Comments only: annotate FIXME in core::str
2012-06-14 19:32:41 -07:00
Tim Chevalier
d0e1591a6a
Comments only: annotate FIXMEs in core::run
2012-06-14 19:32:41 -07:00
Tim Chevalier
70dde68cfb
Annotate one FIXME and remove another
...
...since we probably won't have this kind of typestate.
2012-06-14 19:32:41 -07:00
Tim Chevalier
c96ae78c38
Comments only: annotate FIXMEs in core::os
2012-06-14 19:32:41 -07:00
Tim Chevalier
39d9c30a15
Remove code from parser that was awaiting snapshot
...
Remove old parser functions as well as support for old-style capture
clauses. Remove remaining old-style capture clauses.
2012-06-14 19:09:02 -07:00
Tim Chevalier
bc507c4ef5
Remove unneeded spawn in std::timer, and annotate a FIXME
2012-06-14 19:09:02 -07:00
Patrick Walton
6969f0f2fc
Issue #2572 : (trans) Fix self-referential classes.
2012-06-14 18:51:31 -07:00
Tim Chevalier
6b16325f43
Comments only: annotate FIXMEs
2012-06-14 18:46:33 -07:00
Tim Chevalier
dce5d6ab9c
whitespace
2012-06-14 18:46:10 -07:00
Tim Chevalier
7ee7ba5955
Remove workaround
2012-06-14 18:21:17 -07:00
Tim Chevalier
7441a90fd9
Comments only: annotate FIXMEs
2012-06-14 18:21:17 -07:00
Michael Sullivan
af60716281
Get an initial implementation of boxed vectors working.
2012-06-14 18:01:05 -07:00
Tim Chevalier
9e9e280446
annotate FIXME in iter-trait
2012-06-14 17:57:22 -07:00
Tim Chevalier
f7dd2d5bd5
Add xfailed test case for issue 2611
2012-06-14 17:56:41 -07:00
Tim Chevalier
8945255559
Comments only: Annotate FIXMEs in libcore
2012-06-14 17:56:41 -07:00
Tim Chevalier
ffc9fff720
In dvec, annotate a FIXME and uncomment append_iter
...
I uncommented append_iter and made it compile. I hope it wasn't
horribly flawed in some other way... but if so, there was no comment
explaining how.
2012-06-14 17:56:41 -07:00
Tim Chevalier
97bcb20244
Avoid some duplicated typechecking work
...
There was a FIXME noting that ty::enum_variants and typeck::check::
check_enum_variants both call eval_const_expr. I tried refactoring the
code so that check_enum_variants does all the work and enum_variants
just looks up cached results, but this turned out not to be easy because
several ty functions call enum_variants and it might get invoked on an
enum before that enum item has been typechecked. Instead, I just made
check_enum_variants update the enum_var_cache so that enum_variants
will never call eval_const_expr twice on the same const.
2012-06-14 16:21:53 -07:00
Graydon Hoare
aeb9a2b72c
Add zero check/fail paths on div/mod paths. Close #944 .
2012-06-14 15:39:24 -07:00