2209 Commits

Author SHA1 Message Date
Niko Matsakis
a559329692 test that we preserve boxes in patterns---still one bug 2012-05-18 14:32:37 -07:00
Brian Anderson
3f283bb168 rustc: Don't recurse in seq_preconds. Consumes too much stack 2012-05-18 14:28:39 -07:00
Niko Matsakis
afca68b820 test file I had lying around and had forgotten to commit 2012-05-18 10:38:18 -07:00
Paul Stansifer
0eef34bacb add #include_bin[] 2012-05-18 10:05:25 -07:00
Paul Stansifer
ac2faad26e Fold #include_str into the other source_utils.rs syntax extensions. 2012-05-18 10:05:25 -07:00
Paul Stansifer
07e775404f add #mod[], which expands to the current module path 2012-05-18 10:05:25 -07:00
Paul Stansifer
88f4d06941 New syntax extensions: #line[], #col[], #file[], #stringify[], #include[] 2012-05-18 10:05:24 -07:00
Paul Stansifer
9fe547d3a7 Make extracting syntax extension arguments easier. 2012-05-18 10:05:24 -07:00
Tim Chevalier
0343b0553b Test that a class type name gets printed correctly in a...
"cannot be dereferenced" error message. Closes #2370
2012-05-17 09:40:43 -07:00
Graydon Hoare
9752523f3a Include intrinsic module in all crates, emit visit glue, fn intrinsic::visit_ty. Not yet working. 2012-05-16 18:24:00 -07:00
Niko Matsakis
21fc3af031 add xfail-fast directives for borrowck tests 2012-05-16 12:44:54 -07:00
Niko Matsakis
63210ecddb correct preservation of explicit borrows like "let x = &*y;" 2012-05-16 07:19:19 -07:00
Niko Matsakis
4bfa19b100 rename test 2012-05-15 21:20:52 -07:00
Niko Matsakis
9c7b74b025 check if the type of a local variable contains illegal region
also, try to suppress some of the duplicate errors---in general
more work is needed to make these error messages comprehensible
to ordinary humans
2012-05-15 21:20:37 -07:00
Tim Chevalier
7df7a9d8ac Start porting tests to use classes with dtors instead of resources 2012-05-15 20:35:57 -07:00
Niko Matsakis
ab735320b4 move regionck into typeck, in the process fixing a bug or two 2012-05-15 19:05:03 -07:00
Tim Chevalier
fa5cc5bcd0 Generate drop glue correctly for classes with destructors 2012-05-15 18:00:41 -07:00
Niko Matsakis
adb61e3e99 get preservation of boxes working, at least in simple cases 2012-05-15 13:38:16 -07:00
Niko Matsakis
efa2252cfc add a test that current fails b/c we do not preserve boxes 2012-05-15 11:49:09 -07:00
Lindsey Kuper
b8880e3254 Remove be keyword.
Closes #2227.
2012-05-15 10:41:14 -07:00
Graydon Hoare
d899c3a579 More work on reflection, now calls iface visitors back as well. 2012-05-14 15:49:10 -07:00
Tim Chevalier
5428a22b95 First cut at dtors for classes
Classes with dtors should compile now. Haven't yet tested
whether they actually run correctly.

Beginnings of support for #2295, though that won't be done until
there's more test cases and resources are removed.
2012-05-14 14:26:10 -07:00
Tim Chevalier
89cd2f6bd0 Enforce that self doesn't escape from a class
Closes #2294
2012-05-14 14:26:10 -07:00
Niko Matsakis
a6b9fa0cd1 new test for loaning out an index 2012-05-11 18:27:17 -07:00
Niko Matsakis
63eb8e0e87 move purity checking into borrowck, addresses #1422 2012-05-11 14:05:58 -07:00
Graydon Hoare
2585384c97 First working monomorphic type-reflection. 2012-05-11 13:10:07 -07:00
Niko Matsakis
5dbf881e87 three new tests for assigning to various unassignable things 2012-05-11 06:41:58 -07:00
Niko Matsakis
b4d1f1b2c1 replace mutbl pass with borrowck 2012-05-10 21:14:43 -07:00
Paul Stansifer
f943667af3 Remove do ... while loops from the tests and docs. 2012-05-10 15:27:42 -07:00
Niko Matsakis
50a3dd40ae implement new borrow ck (disabled by default) 2012-05-09 17:00:19 -07:00
Niko Matsakis
5e7229b72c reduce self type to a special type parameter 2012-05-09 07:11:59 -07:00
Marijn Haverbeke
96a159a6ea Support visibility modifiers and attributes on view items
Issue #1893
Tangentially, issue #2357
2012-05-08 23:14:24 +02:00
Tim Chevalier
1e6da7b38d Add another test case for #2288
Added a test case for #2288. It's xfailed for now, pending #2364
2012-05-07 14:43:31 -07:00
Tim Chevalier
1460ea43d2 Add xfailed test case for #2354 2012-05-07 14:43:31 -07:00
Tim Chevalier
4f105e4025 In resolve, visit the path in an iface ref
Necessary to resolve any type arguments in a ref to a parameterized
iface. This meant that, for example:

class A implements B<int> { ...

didn't work before, because the "int" in B's argument wasn't getting
visited, and thus wasn't getting resolved. Now it works.

Partially addresses Issue #2288, but I also want to check that class
ty params can appear as the type arguments to ifaces (for example,

class A<T> implements B<T> {...

should work.)
2012-05-07 14:43:31 -07:00
Niko Matsakis
8a9df5aa38 make it illegal to implicitly capture mutable variables
this is the final part of #1273
2012-05-07 13:22:42 -07:00
Tim Chevalier
95a2b5d42f Add test case that checks that class members must be prefixed with "self"
Closes #2289.
2012-05-04 13:44:01 -07:00
Niko Matsakis
50ec6bd2c3 new cap clause syntax 2012-05-04 12:33:08 -07:00
Niko Matsakis
cfa09d35a3 Revert "allow fn exprs to omit arg types"
This reverts commit 1ba4ca4c4a0153578e812baf5f7f5554d079de40.
2012-05-03 14:42:34 -07:00
Niko Matsakis
1ba4ca4c4a allow fn exprs to omit arg types
also, avoid using type variables for fn args with omitted types
unless necessary.  This will be important for bound regions in
fn types.

fixes #2093
2012-05-03 14:32:32 -07:00
Graydon Hoare
6e5c8a7fb8 More shape fixes for evecs. 2012-05-03 14:11:54 -07:00
Graydon Hoare
11a5d10bf2 Implement better shape code for evec, estr. 2012-05-03 13:09:02 -07:00
Tim Chevalier
d8f28be753 Check early on in typeck that types being implemented are actually iface types
Closes #2330.
2012-05-03 12:38:45 -07:00
Marijn Haverbeke
d0d71838cd Mention missing constructor when complaining about inexhaustive top-level pattern
It previously, uselessly, only pointed out the constructor when the
inexhaustive pattern was nested in some other pattern.

Closes #2337
2012-05-03 17:35:12 +02:00
Niko Matsakis
f1129635ee report ambig impl methods 2012-05-02 21:47:14 -07:00
Niko Matsakis
f4cc5ff226 remove extra type parameter from ptr::is_null() and friends 2012-05-02 21:47:14 -07:00
Brian Anderson
358dc59538 test: xfail-win32 run-pass/native-struct 2012-05-02 19:07:35 -07:00
Brian Anderson
11354963b3 rustc: Hack around some FFI bustage. Unbreak servo 2012-05-02 18:35:29 -07:00
Brian Anderson
1e410f6206 rt: Fix some record alignment issues on windows 2012-05-02 18:32:20 -07:00
Brian Anderson
e2910bf264 Revert "rt: Fix some record alignment issues on windows"
This reverts commit a2457f5864092161a7224c667c4a2e8b60f06d4a.
2012-05-02 18:25:22 -07:00