Niko Matsakis
737e115646
mode: reset mode on entry to fn body.
...
This is an interim fix to address the "Beware!" unsoundness. I have a
more comprehensive rewrite of mode.rs in the pipeline.
r=pcwalton
2013-01-10 13:17:25 -08:00
Patrick Walton
2a1b6c4de9
librustc: Implement &static
as the replacement for Durable
. r=nmatsakis
2013-01-10 11:16:54 -08:00
Patrick Walton
982830c836
librustc: Allow the type parameter version of Self
to be spelled with a capital S
2013-01-10 10:37:22 -08:00
Graydon Hoare
61210e01f9
test: fix check-fast breakage.
2013-01-10 10:24:18 -08:00
Niko Matsakis
2b92962aa2
A collection of refactorings that I found it hard/tiresome to divide:
...
- Make `extern fn()` assignable to any closure type, rather than
a subtype.
- Remove unused int_ty_set and float_ty_set
- Refactor variable unification and make it more DRY
- Do fn sub/lub/glb on the level of fn_sig
- Rename infer::to_str::ToStr to infer::to_str::InferStr
- Capitalize names of various types
- Correct hashing of FnMeta
- Convert various records-of-fns into structs-of-fns. This is both
eliminating use of deprecated features and more forwards compatible
with fn reform.
r=pcwalton
2013-01-09 14:59:07 -08:00
Patrick Walton
2db3abddcd
librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc
2013-01-08 22:02:35 -08:00
Patrick Walton
44ab00ee37
Revert "librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc"
...
This reverts commit a8d37af247
.
2013-01-08 19:29:16 -08:00
Patrick Walton
a8d37af247
librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc
2013-01-08 19:27:57 -08:00
Tim Chevalier
80435ad429
Make self
visible when typechecking nested functions
...
Necessary to allow supertrait methods to be called in default methods.
r=nikomatsakis
2013-01-08 13:56:26 -08:00
Patrick Walton
722d670c85
test: Fix botched regex. rs=bustage
2013-01-08 10:35:20 -08:00
Patrick Walton
1f667e7995
test: Regular expression mistake. rs=bustage
2013-01-07 22:13:34 -08:00
Patrick Walton
fcc470c0ee
test: Fix check-fast for resolve changes. rs=bustage
2013-01-07 18:55:12 -08:00
Niko Matsakis
16ec9aa6e7
Support assignability for struct fields. r=pcwalton
2013-01-07 18:46:37 -08:00
Tim Chevalier
7b433d098a
Revert "Change the self def_id to a self_info in typeck, and inherit"
...
This reverts commit 921393c568
.
2013-01-07 18:18:22 -08:00
Tim Chevalier
921393c568
Change the self def_id to a self_info in typeck, and inherit
...
That is, treat `self` as if it has dynamic scope. This seems to
be harmless, and prevents an ICE as per #3563
2013-01-07 18:08:19 -08:00
Jed Davis
3e7ab3a443
Add a test for nullary univariant enums.
2013-01-05 00:49:01 -08:00
Tim Chevalier
1330b1cdf5
Add test cases (one xfailed, one not)
...
as per #3601 and #3609
2013-01-03 14:55:51 -08:00
Patrick Walton
19dfb47564
test: Fix test/run-pass/class-cast-to-trait-cross-crate-2. rs=fire
2012-12-28 18:04:41 -08:00
Patrick Walton
40eaecbd47
test: Fix a couple more tests. rs=bustage
2012-12-28 18:02:20 -08:00
Patrick Walton
c42d5e2747
test: Fix test/run-pass/pipe-pingpong-proto. rs=bustage
2012-12-28 17:33:28 -08:00
Patrick Walton
31b07ae8c5
test: Fix test/run-pass/pipe-pingpong-bounded. rs=bustage
2012-12-28 17:32:42 -08:00
Patrick Walton
f67c37263e
test: Fix a bunch of run-pass tests. rs=bustage
2012-12-28 17:17:05 -08:00
Tim Chevalier
c880d0ab76
Add an xfailed test case and a CONTRIBUTING.md file
2012-12-27 14:58:45 -08:00
Tim Chevalier
0873553680
Merge pull request #4298 from JensNockert/byteswap
...
Add support for byteswap intrinsics
2012-12-27 10:47:15 -08:00
Jens Nockert
a51661e8c1
Add support for byteswap intrinsics
...
Adds support for the llvm.bswap.i{8,16,32} intrinsics, which swaps the
byte order from little endian to big endian, or the reverse.
2012-12-27 19:07:05 +01:00
Patrick Walton
57c599914a
librustc: Terminate name searches at the nearest module scope for paths that contain at least two components. r=graydon
2012-12-27 10:02:54 -08:00
Erick Tryzelaar
efb8711f90
Merge branch 'master' of github.com:mozilla/rust into incoming
2012-12-27 10:34:27 -05:00
Tim Chevalier
8d438747a5
Remove xfail-fast from trait-composition-trivial
2012-12-24 18:29:01 -08:00
Tim Chevalier
d722217a68
tests: Add test case. Closes #3250
2012-12-24 18:29:01 -08:00
Graydon Hoare
329316ce15
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-24 18:29:01 -08:00
Tim Chevalier
499a58708f
Assign correct types to struct-like enum variant constructors
...
Before, the type was just the enum type itself, which caused an
assertion failure in iter_variant in trans::base.
r=brson
Closes #4229
2012-12-24 15:59:15 -08:00
Tim Chevalier
b1b0c297a4
Merge pull request #4249 from graydon/0.6-bump
...
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-23 13:47:11 -08:00
Tim Chevalier
10e8e3e286
Remove xfail-fast from trait-composition-trivial
2012-12-23 00:24:07 -08:00
Tim Chevalier
5c6e928e32
tests: Add test case. Closes #3250
2012-12-22 14:58:30 -08:00
Graydon Hoare
dbd36111fe
bump 0.5 => 0.6, redirect some URLs in docs.
2012-12-21 15:35:49 -08:00
Jens Nockert
82641d4c39
Add support for bitcount intrinsics
...
Adds support for the llvm.ctpop, llvm.ctlz and llvm.cttz intrinsics.
2012-12-21 19:30:33 +01:00
Erick Tryzelaar
c14105bb8a
Remove serialize::traits submodule.
2012-12-19 18:16:20 -08:00
Erick Tryzelaar
938058b004
Fix vec::flat_map_to_vec method
2012-12-18 20:48:51 -08:00
Brian Anderson
97ddf3c7bd
Stop resolving static methods at the module level. Closes #4179
2012-12-18 18:35:18 -08:00
Graydon Hoare
8e28f23c60
core: add macro_rules! for "condition! { c: in -> out; }".
2012-12-18 17:22:27 -08:00
Brian Anderson
907fa74e8b
Fix some iter tests
2012-12-18 15:08:51 -08:00
Brian Anderson
b46e25bdc8
Merge commit 'erickt/incoming^' into kind-names
2012-12-18 12:22:59 -08:00
Graydon Hoare
55138c739d
fix 4 repr tests due to differences in spacing. r=burningtree.
2012-12-18 11:17:33 -08:00
Erick Tryzelaar
85bb1fc2c4
Change iter::find's closure to take a ref
2012-12-17 22:01:38 -08:00
Erick Tryzelaar
8650c6f683
Switch from serialization to std::serialize. (snapshot)
2012-12-17 20:00:36 -08:00
Brian Anderson
33a8f855c2
Make the path and path2 attributes equivalent. Remove some uses
2012-12-17 18:06:52 -08:00
Jakub Wieczorek
6c83fe4c24
Add more tests
2012-12-17 16:50:40 -08:00
Jakub Wieczorek
1968cb315a
Add support for destructuring vectors in match expressions
2012-12-17 16:50:40 -08:00
Patrick Walton
02e804bba8
test: Fix some broken test cases
2012-12-17 14:58:21 -08:00
Patrick Walton
41c0d7083e
librustc: Fix type_use for generic newtype structs. Closes #4188 . rs=bugfix
2012-12-14 19:44:07 -08:00
Patrick Walton
593f414254
test: Add a test for trait inheritance with self as a type parameter. rs=test-only
2012-12-14 19:12:29 -08:00
Brian Anderson
dbc52ce505
xfail-fast run-pass/stat.rs
2012-12-14 16:50:08 -08:00
Tim Chevalier
3a5b6a79c6
Fix trait-inheritance-overloading-xc and un-xfail
2012-12-14 15:25:32 -08:00
Tim Chevalier
abe33f165e
Un-xfail tests that work now
2012-12-14 15:05:48 -08:00
Brian Anderson
e6d1b02359
Rename core::comm to core::oldcomm
2012-12-14 14:59:32 -08:00
Brian Anderson
c35a8589ab
Fix broken tests
2012-12-14 14:58:16 -08:00
Brian Anderson
4559895b12
Update src/test/run-pass/static-fn-trait-xc.rs
2012-12-13 22:17:11 -07:00
Patrick Walton
c3f0aa973e
test: Fix last-use-corner-cases. rs=bustage
2012-12-13 18:08:52 -08:00
Patrick Walton
732c39c183
librustc: Have coherence check Copy kind bounds when determining whether parameter substitutions could possibly unify. r=nmatsakis
2012-12-13 16:14:54 -08:00
Brian Anderson
ed4fac01b5
Rename Send trait to Owned
2012-12-13 15:52:50 -08:00
Brian Anderson
a277081ee4
Rename Owned trait to Durable
2012-12-13 15:52:50 -08:00
Patrick Walton
cd120736cb
librustc: Allow moves out of self
. r=nmatsakis
2012-12-13 15:49:07 -08:00
Patrick Walton
45848b2040
librustc: Automatically move non-implicitly-copyable types into unique closures. r=nmatsakis
2012-12-13 15:33:33 -08:00
Brian Anderson
7ca94369da
Fix encoding of trait static method paths. Closes #4097 . r=pcwalton
2012-12-13 15:02:42 -08:00
Patrick Walton
9d23029648
libsyntax: Implement deriving
for struct-like enum variants. r=brson
2012-12-13 14:55:11 -08:00
Patrick Walton
efb9b74718
librustc: Fix explicit self for objects in more cases. r=nmatsakis
2012-12-13 13:29:08 -08:00
Patrick Walton
4c2e4c37ce
librustc: Make use
statements crate-relative by default. r=brson
2012-12-13 13:05:22 -08:00
Brian Anderson
6047dd35bb
Fix vtable calculations when translating static methods. Closes #4165
2012-12-12 17:14:39 -08:00
Graydon Hoare
9a4c669867
syntax: remove remaining #syntaxext machinery. Close #3516 .
2012-12-12 17:08:09 -08:00
Graydon Hoare
e24ae85025
syntax: remove most code handling old-style syntax extensions.
2012-12-12 15:02:47 -08:00
Tim Chevalier
38bd694df1
Reverse the order of the results of pipes::stream
...
As per #3637 .
2012-12-11 19:23:28 -08:00
Brian Anderson
a7159be24a
Remove old deriving
2012-12-11 18:11:14 -08:00
Brian Anderson
7d556e18b0
Fix deriving for single-variant enums
2012-12-11 15:41:16 -08:00
Brian Anderson
6e38e334de
Relate the module hierarchy to directory paths in the parser
...
Introduces a temporary 'path2' attribute that will replace 'path' after
a snapshot
2012-12-11 15:00:23 -08:00
Tim Chevalier
01c0971172
Allow pattern-matching on any strings, not just unique strings
...
r=brson
Closes #3574
2012-12-11 11:22:13 -08:00
Tim Chevalier
0046ed9462
Remove un-needed code for obsolete classes
...
and rename "class" to "struct" everywhere possible (except local
vars, I was too lazy for that) -- that is why this commit is so
big.
No review, just dead code removal and renaming.
Closes #3515
2012-12-10 18:45:01 -08:00
Brian Anderson
3fcdb7d6a7
Adjust the die macro to only accept ~str and to work in statement position
2012-12-10 18:16:22 -08:00
Graydon Hoare
d1affff623
Reliciense makefiles and testsuite. Yup.
2012-12-10 17:32:58 -08:00
Patrick Walton
86f7eb3446
test: Fix aux-build in struct-destructuring-cross-crate. rs=bustage
2012-12-10 14:59:26 -08:00
Patrick Walton
3f78e0ecc0
librustc: Fix bug preventing cross-crate struct destructuring from working. rs=bugfix
2012-12-10 12:38:31 -08:00
Tim Chevalier
3f7b112b16
Update and un-xfail crate-method-reexport-grrrrrrr2
...
Closes #3155
2012-12-08 23:40:17 -08:00
Tim Chevalier
2c2398ca0d
Xfail broken tests
2012-12-07 23:42:58 -08:00
Patrick Walton
833eb7ae1d
test: Fix borrowck-preserve-box-in-pat. rs=bustage
2012-12-07 22:42:49 -08:00
Patrick Walton
374ccfee9a
test: Fix borrowck-preserve-box-in-discr; more fallout from pattern bindings. rs=bustage
2012-12-07 22:00:55 -08:00
Patrick Walton
6338865741
test: Remove alt-implicit-copy.rs test. Incompatible with current borrow check semantics. rs=bustage
2012-12-07 21:59:38 -08:00
Patrick Walton
6157f1dc06
test: Fix some busted run-pass tests, fallout from the pattern bindings change. rs=bustage
2012-12-07 21:56:46 -08:00
Patrick Walton
184f5102b3
libsyntax: Fix parsing of module-qualified structure patterns. rs=bugfix
2012-12-07 19:10:16 -08:00
Patrick Walton
ab3b752906
librustc: Implement "&mut [T]" as an expression. r=brson
2012-12-07 18:29:10 -08:00
Brian Anderson
10c9d7921d
Trait constraints are separated by space, not comma
2012-12-07 15:54:17 -08:00
Brian Anderson
2fcf562d16
Add an auto-slice-and-ref step to method lookup. Allows ~[T] to work with explicit self
2012-12-07 15:29:38 -08:00
Brian Anderson
e71081ec03
Merge pull request #4101 from brson/bound-default-methods
...
Call default methods on bound typarams more correctly
2012-12-07 15:10:57 -08:00
Tim Chevalier
35f36808ff
Test cases, some xfailed
2012-12-06 21:53:14 -08:00
Tim Chevalier
31a4f40329
Remove compile-fail test from run-pass
2012-12-06 21:52:50 -08:00
Tim Chevalier
dd80f7e06e
Xfail trait-inheritance-overloading-xc-exe
...
Issue #4135
2012-12-06 21:52:50 -08:00
Brian Anderson
ddfd1eaeb5
Use fuzzy_eq in run-pass/intrinsics-math.rs
2012-12-06 18:55:10 -08:00
Brian Anderson
098f71d348
xfail-fast static-fn-inline-xc. needs aux-build
2012-12-06 18:44:26 -08:00
Tim Chevalier
d2ad028a7c
Rename std::ebml::Reader => std::ebml::reader, same for writer
...
Closes #4076
2012-12-06 16:14:54 -08:00
Tim Chevalier
fe9a339939
Add various test cases, mostly xfailed
2012-12-06 16:14:54 -08:00
Patrick Walton
219e260009
test: Fix some more run-pass bustage. rs=clownshoes
2012-12-06 09:28:42 -08:00
Patrick Walton
aa3aa3b1b2
librustc: Fix type_use to not treat i1* arguments as interchangeable with i8* arguments. Closes #3917 . rs=bugfix
2012-12-05 20:23:14 -08:00
Brian Anderson
32ce61f947
Fix test
2012-12-05 20:14:40 -08:00
Brian Anderson
4f3cc01487
Fix cross-crate inlining of static functions
2012-12-05 18:09:52 -08:00
Patrick Walton
5bf9e6f58b
test: Fix float imprecision error on intrinsics-math
2012-12-05 17:54:12 -08:00
Patrick Walton
674b638385
test: Fix alt-implicit-copy-unique. rs=me
2012-12-05 17:38:21 -08:00
Patrick Walton
e1685dd990
test: More bustage fixes. rs=me
2012-12-05 17:36:51 -08:00
Patrick Walton
6084032270
test: More run-pass test fixes
2012-12-05 16:51:32 -08:00
Patrick Walton
3440482d8d
test: Fix a bunch of test cases. rs=burning
2012-12-05 11:40:47 -08:00
Brian Anderson
01cd53baf0
Merge remote-tracking branch 'luqmana/incoming'
...
Conflicts:
src/librustc/middle/typeck/check.rs
2012-12-04 18:49:50 -08:00
Patrick Walton
33c1e47c1b
librustc: Implement moves based on type. r=nmatsakis
2012-12-04 15:38:04 -08:00
Brian Anderson
05e51e6f7f
Call default methods on bound typarams more correctly
2012-12-02 18:29:22 -08:00
Brian Anderson
c19c24d193
Fix tests for field parsing changes
2012-12-01 15:25:17 -08:00
Patrick Walton
1088006ed9
librustc: Implement unit-like struct constants. r=brson
2012-11-30 21:10:54 -08:00
Patrick Walton
8fa306a0ad
librustc: Implement tuple struct constants. r=brson
2012-11-30 21:10:17 -08:00
Patrick Walton
5b5a0df7ee
librustc: Implement C-like enum constants. r=tjc
2012-11-30 21:09:14 -08:00
Patrick Walton
54ae377ec2
librustc: Implement explicit @self and ~self for objects. r=nmatsakis
2012-11-30 19:39:01 -08:00
Patrick Walton
3afd6c3d79
librustc: Implement simple explicit self for objects. r=nmatsakis
2012-11-30 18:55:12 -08:00
Brian Anderson
3ed9fbd63c
impls of traits cannot define methods on the anonymous trait
2012-11-29 22:07:49 -08:00
Brian Anderson
78ee821154
Implement trait inheritance for bounded type parameters
2012-11-29 18:10:11 -08:00
Brian Anderson
05e7ba8d39
Enable trait-inheritance-simple.rs
2012-11-29 18:10:11 -08:00
Tim Chevalier
f459acc45d
Disallow importing private items
...
resolve wasn't checking that a `use` referred to a public item.
r=brson
2012-11-29 14:12:51 -08:00
Paul Stansifer
f6a8ffc625
Test statement macros.
2012-11-29 12:09:11 -08:00
Paul Stansifer
e7f07cb2a3
Update tests to respect the way that macros work now.
2012-11-29 12:09:11 -08:00
Patrick Walton
c946c87b6f
libsyntax: Remove the "by-mutable-ref" obsolete syntax error; it blocks useful function argument patterns. Add a test for the latter. r=brson
2012-11-29 12:06:36 -08:00
Patrick Walton
3beff12309
test: Fix broken resource-cycle.rs. r=tinderbox
2012-11-29 12:05:56 -08:00
Patrick Walton
9678abedec
test: Add a test that function argument patterns take in the expected type. r=test-only
2012-11-29 11:25:02 -08:00
Patrick Walton
976e1ced00
test: Add a test for generic objects. r=test-only
2012-11-29 11:18:36 -08:00
Patrick Walton
9e1c9be16f
librustc: Make the Drop trait use explicit self
2012-11-29 11:06:15 -08:00
Luqman Aden
c6b1739232
Add more standard c lib llvm intrinsics.
2012-11-29 06:48:07 -05:00
Brian Anderson
16f72df704
Merge remote-tracking branch 'erickt/time'
...
Conflicts:
src/libstd/time.rs
2012-11-28 14:49:58 -08:00
Patrick Walton
b9f9ab8f77
test: Implement a test for the Drop trait on a generic struct. a=test-only
2012-11-28 14:19:41 -08:00
Brian Anderson
fc06114ddf
Merge remote-tracking branch 'brson/companion' into incoming
...
Conflicts:
src/compiletest/compiletest.rs
src/libcargo/cargo.rs
src/libcore/core.rs
src/librustc/rustc.rs
src/librustdoc/rustdoc.rc
2012-11-28 13:17:33 -08:00
Patrick Walton
430583c8b4
librustc: Allow &T to be assigned to *T. r=nmatsakis
2012-11-28 11:29:53 -08:00
Patrick Walton
61cfec3c52
librustc: Parse extern "C" { ... }
. r=brson
2012-11-28 11:28:16 -08:00
Patrick Walton
ca6970a65e
librustc: Make overloaded operators with explicit self translate correctly
2012-11-28 11:01:14 -08:00
Graydon Hoare
082a88e42c
Merge pull request #4032 from catamorphism/getopts
...
[libstd] getopts, now with fewer copies
2012-11-28 08:47:25 -08:00
Patrick Walton
1c348e6e38
librustc: Implement @mut [T] as the new replacement for @[mut T]
2012-11-27 09:23:31 -08:00
Erick Tryzelaar
32763caa60
auto_serialize should use explicit refs ( fixes #4044 )
2012-11-26 22:31:48 -08:00
Jesse Jones
a18f0d413c
Made Tm_ a struct instead of a record and added serialization support to Tm and Tm_.
...
Not entirely clear what the best way to do this is. Right now we persist the entire
struct which seems to be both portable and exactly round-trippable.
2012-11-26 21:49:29 -08:00
Patrick Walton
7bc29c62d0
libcore: Add explicit self to all overloaded operators but Add and Index. r=brson
2012-11-26 19:35:52 -08:00
Brian Anderson
be6613e048
Remove the crate language
2012-11-26 18:13:54 -08:00
Brian Anderson
58e26243a7
syntax: Add a hack to support the int-template pattern
2012-11-26 18:13:54 -08:00
Patrick Walton
de0268b693
librustc: Fix translation of cross-crate inline or generic methods with explicit self. rs=blocking-snapshot
2012-11-26 18:09:12 -08:00
Brian Anderson
3acf4a2a9c
Fix test
2012-11-25 14:04:45 -08:00
Kevin Cantu
ff4075e553
Add improvements to insert_with_key
...
This commit adds a lower-level implementation of the generic
`insert_with_key` which I expect to be faster. Now insert could be
defined with insert_with_key, too, although I'm not sure we want to do that.
This also clarifies the tests a bit and adds an `insert_with` function.
2012-11-25 12:41:11 -08:00
Kevin Cantu
a343e435d5
Add an insert_with_key function to the Map trait
2012-11-25 12:41:11 -08:00
Tim Chevalier
fa66f3ec18
[tests] Add passing test
...
Closes #3683
2012-11-24 14:02:35 -08:00
Tim Chevalier
ec0c029a7e
Split EBML module into a reader and a writer module
...
Minor refactoring, no review.
Closes #2739
2012-11-24 13:40:00 -08:00
Tim Chevalier
236fd32f0a
[tests] Add test for #4033
2012-11-24 13:40:00 -08:00
Tim Chevalier
f74fe894fc
[libstd] getopts, now with fewer copies
...
Change the opt_ functions in getopts to take a reference to a
Matches, instead of taking a Matches by-value, as suggested in
2012-11-24 12:52:27 -08:00
Niko Matsakis
117e5e3583
Implement LUB algorithm and add new unit-testing infrastructure for infer.
...
r=brson
2012-11-24 09:53:39 -05:00
Patrick Walton
e6d87a3ef4
libsyntax: Implement deriving
correctly for type-parameterized structs and enums. r=brson
2012-11-21 10:27:37 -08:00
Patrick Walton
57588edf3b
libsyntax: Implement deriving via a syntax extension for the IterBytes
trait. r=brson
2012-11-21 10:27:34 -08:00
Patrick Walton
e0876fdfc1
libsyntax: Implement deriving
for enums with N-ary variants. r=brson
2012-11-21 10:27:13 -08:00
Erick Tryzelaar
a27f5239bd
libcore: Add stat methods to paths
...
Should we return the posix types, or should we just use i64s?
Should we expose platform specific stat fields?
2012-11-20 16:39:31 -08:00
Patrick Walton
a7aecc46a5
rustc: Implement "deriving" for monomorphic structs via a syntax extension. r=brson
2012-11-20 11:58:19 -08:00
Patrick Walton
318e534895
rustc: Implement explicit self for Eq and Ord. r=graydon
2012-11-19 15:33:11 -08:00
Brian Anderson
9bed0ddb0e
Fix parsing of interpolated paths
2012-11-19 14:00:39 -08:00
Brian Anderson
72cc1aca17
Parse file mods from .rs files
2012-11-18 18:09:41 -08:00
Jesse Jones
68c852ad3a
Made Map.contains_key, contains_key_ref, and get pure.
2012-11-18 13:25:24 -08:00
Tim Chevalier
f9ca0c89d8
Add xfailed test for #3979
2012-11-15 18:03:35 -08:00
Patrick Walton
64305174c9
librustc: Fix cross-crate reexports. rs=blocking-servo
2012-11-15 17:15:02 -08:00
Tim Chevalier
a0610c952f
Add tests for #2190 (xfailed)
2012-11-15 12:35:14 -08:00
Patrick Walton
adc4bed773
librustc: Implement (and require) explicit self for derivable traits. r=nmatsakis
2012-11-15 10:26:49 -08:00
Patrick Walton
29e10c91fe
librustc: Pass through extra parameters in automatically-derived methods. r=brson
2012-11-15 10:26:40 -08:00
Niko Matsakis
b7c04d152b
Inherit mutability through fixed-length vectors.
...
Fixes #3226 . No review (one line bug fix).
2012-11-14 19:47:06 -08:00
Ben Striegel
f4a5a76aa4
Convert the test suite to use the Drop trait
2012-11-14 19:26:37 -08:00
Brian Anderson
8336cad95d
Move two fn assignability tests from compile-fail to run-pass
2012-11-14 12:40:23 -08:00
Patrick Walton
32ad4ae4cd
librustc: Require the #[derivable] attribute, remove the significance of "impl Foo : Bar;", and allow only a subset of methods in a trait to be derived. r=brson
2012-11-14 11:36:55 -08:00
Patrick Walton
3e14ada4f6
rustc: Implement let assignability. r=nmatsakis
2012-11-14 11:26:00 -08:00
Patrick Walton
bad62dcb04
rustc: Allow constants to be used in patterns. r=nmatsakis
2012-11-14 11:06:29 -08:00
Patrick Walton
db9f8db741
librustc: Implement deriving with a unit return type. r=tjc
2012-11-13 10:37:58 -08:00
Graydon Hoare
4e1ce014c8
cleanup: convert some remaining #foo invocations to foo! form.
2012-11-13 08:57:31 -08:00
Patrick Walton
2b93ab5a21
rustc: Make static methods not leak out of traits. r=brson
2012-11-12 22:11:22 -08:00
Patrick Walton
fe02814a63
rustc: Implement floating point literal inference. r=nmatsakis
2012-11-12 10:39:08 -08:00
Brian Anderson
3f816bdd57
xfail-fast run-pass/pub-use-xcrate
2012-11-08 19:02:25 -08:00
Brian Anderson
8643f757a2
rustc: Fix cross-crate reexports. #3908 . r=pcwalton
2012-11-08 17:10:48 -08:00
Patrick Walton
0fc952372a
rustc: Support irrefutable patterns in function arguments. r=nmatsakis
2012-11-07 19:29:30 -08:00
Patrick Walton
2904095570
rustc: Implement the Drop trait. r=brson
2012-11-07 12:34:32 -08:00
Graydon Hoare
92e3a8c17e
rustc: reuse const vals, translate fn paths as consts. Close #2530 .
2012-11-06 17:13:52 -08:00
Niko Matsakis
b0ed151539
Cleanup how we handle proto in types, remove unsound subtyping
...
Fixes #1896 which was never truly fixed, just masked.
The given tests would have failed had they used `~fn()` and
not `@fn()`. They now result in compilation errors.
Fixes #2978 .
Necessary first step for #2202 , #2263 .
2012-11-06 08:56:29 -08:00
Patrick Walton
449f4fbb07
rustc: Implement deriving involving generic bounded traits. r=brson
2012-11-05 13:38:45 -08:00
Brian Anderson
762101b72a
syntax: Fold macros in default methods. Closes #3911
2012-11-02 23:11:36 -07:00
Brian Anderson
e2f33e6883
Add xfailed test for #3908
2012-11-02 15:57:47 -07:00
Brian Anderson
1c8c1b2181
Add xfailed test for #3907
2012-11-02 15:37:47 -07:00
Patrick Walton
0c2e6fda73
rustc: Implement ~Trait. r=nmatsakis
2012-11-02 10:15:19 -07:00
Patrick Walton
65d4dbeb12
rustc: Implement dereference via unary '*' for structs. r=nmatsakis
2012-11-02 09:56:35 -07:00
Patrick Walton
4165edff22
rustc: Implement translation of pattern matching for tuple structs and unit-like structs. r=nmatsakis
2012-11-02 09:56:28 -07:00
Brian Anderson
3edccc311e
Support #[cfg] on methods
2012-11-01 15:48:50 -07:00
Tim Chevalier
768247f393
Tests for #1896
2012-11-01 15:14:52 -07:00
Tim Chevalier
b269ac13cd
Adding xfailed test for #3874
2012-11-01 15:14:52 -07:00
Patrick Walton
94f05c1936
rustc: Stop overwriting trait static method types when checking generic trait refs. Closes #3903 . rs=blocking-burg
2012-11-01 15:10:41 -07:00
Tim Chevalier
3d8df9947f
Add xfailed test cases
2012-11-01 14:43:26 -07:00
Tim Chevalier
9d276b11e5
Add test case for #3878 , which didn't get merged somehow
2012-11-01 14:43:20 -07:00
Brian Anderson
740763fdef
Merge remote-tracking branch 'vertexclique/incoming'
2012-10-31 16:11:23 -07:00
Tim Chevalier
4e5865f2ad
Fix #1458 (allow paren'd exprs to be the operator in a do
)
...
Closes #1458
2012-10-30 15:06:13 -07:00
Tim Chevalier
165ce14f68
Remove xfail-pretty from tests that pretty-print correctly now
2012-10-30 15:06:10 -07:00
Mahmut Bulut
1dc4d024a8
testcase added for #3878
2012-10-31 00:05:34 +02:00
Tim Chevalier
62f98c8ff8
Preserve parenthesization in the AST
...
Maintain explicit "paren" nodes in the AST so we can pretty-print
without having to guess where parens should go. We may revisit this
in the future.
r=graydon
2012-10-30 15:05:32 -07:00
Patrick Walton
a3b83c6224
rustc: Translate "deriving" for monomorphic intra-crate enums. r=brson
2012-10-30 11:40:44 -07:00
Patrick Walton
d5a27a0e0c
rustc: Translate monomorphic intra-crate automatically-derived methods that follow the "eq" format
2012-10-26 18:23:45 -07:00