bors
3ddfb72512
auto merge of #8562 : bblum/rust/superkinds, r=nikomatsakis
...
For #7083 .
The metadata issue with the old version is now fixed. Ready for review.
This is also not the full solution to #7083 , because this is not supported yet:
```
trait Foo : Send { }
impl <T: Send> Foo for T { }
fn foo<T: Foo>(val: T, chan: std::comm::Chan<T>) {
chan.send(val);
}
```
cc @nikomatsakis
2013-08-21 18:51:42 -07:00
bors
9feaf1d023
auto merge of #8594 : bytewiseand/rust/static-fn-ptr, r=pcwalton
...
Fixes #8588
2013-08-21 15:51:34 -07:00
Andreas Martens
0f6dd53948
Split cross-crate test into own test and xfail-fast it
2013-08-21 17:29:47 +02:00
Ben Blum
4fd404f2ca
Fixup style of test cases for #7083
2013-08-20 13:28:51 -04:00
Ben Blum
4ca2e55adb
Add tests for #7083 .
2013-08-20 13:28:50 -04:00
Graydon Hoare
29a449aae3
Add tests for cross-crate condition handling. Close #5446 .
2013-08-19 15:09:20 -07:00
Niko Matsakis
0479d946c8
Add externfn macro and correctly label fixed_stack_segments
2013-08-19 07:13:15 -04:00
Andreas Martens
cc0c6fd43c
Add assertions and cross crate tests
2013-08-18 22:17:47 +02:00
Erick Tryzelaar
ad5c676853
Fix warnings it tests
2013-08-17 08:42:35 -07:00
Alex Crichton
1764e207fb
Add even more tests
...
Closes #8248
Closes #8249
Closes #8398
Closes #8401
2013-08-15 14:22:36 -07:00
Alex Crichton
443bf93e48
Fix a typo in the ifmt dox
2013-08-15 14:19:09 -07:00
Alex Crichton
783c6a1fbf
Add a bunch of tests for closed issues
...
Closes #3907
Closes #5493
Closes #4464
Closes #4759
Closes #5666
Closes #5884
Closes #5926
Closes #6318
Closes #6557
Closes #6898
Closes #6919
Closes #7222
2013-08-13 21:32:34 -07:00
Alex Crichton
930885d5e5
Forbid pub/priv where it has no effect
...
Closes #5495
2013-08-12 23:20:46 -07:00
Erick Tryzelaar
09f4c9af13
Merge branch 'enum-method-privacy' of https://github.com/michaelwoerister/rust into rollup
...
Conflicts:
src/libsyntax/opt_vec.rs
2013-08-10 12:59:52 -07:00
Corey Richardson
0627089bba
Fix fallout
2013-08-07 23:20:06 -04:00
Alex Crichton
ffd80aa276
Fix unit structs in cross-crate situtations
2013-08-07 22:41:13 -04:00
Michael Woerister
2c9922aa49
Enable privacy check for enum methods.
2013-08-07 14:30:00 +02:00
Daniel Micay
1008945528
remove obsolete foreach
keyword
...
this has been replaced by `for`
2013-08-03 22:48:02 -04:00
bors
bbcce8d95c
auto merge of #8216 : thestinger/rust/range, r=huonw
2013-08-01 22:10:45 -07:00
Daniel Micay
234acad404
replace range
with an external iterator
2013-08-02 00:51:14 -04:00
bors
ecefeb03cc
auto merge of #8185 : alexcrichton/rust/issue-8179, r=pcwalton
...
* All globals marked as `pub` won't have the `internal` linkage type set
* All global references across crates are forced to use the address of the
global in the other crate via an external reference.
r? @graydon
Closes #8179
2013-08-01 19:46:47 -07:00
Daniel Micay
1fc4db2d08
migrate many for
loops to foreach
2013-08-01 05:34:55 -04:00
Alex Crichton
ea5f829307
Resolve globals having different addresses across crates
...
* All globals marked as `pub` won't have the `internal` linkage type set
* All global references across crates are forced to use the address of the
global in the other crate via an external reference.
2013-08-01 01:54:34 -07:00
Brian Anderson
11fc1fd485
test: Use a test extern in various foreign fn tests
2013-07-30 21:13:55 -07:00
Alex Crichton
09e49a8e6c
Allow linking against crates with #[no_std]
...
Previously having optional lang_items caused an assertion failure at
compile-time, and then once that was fixed there was a segfault at runtime of
using a NULL crate-map (crates with no_std)
2013-07-25 19:23:17 -07:00
bors
906264b50f
auto merge of #8015 : msullivan/rust/default-methods, r=nikomatsakis
...
Lots of changes to vtable resolution, handling of super/self method calls in default methods. Fix a lot of trait inheritance bugs.
r? @nikomatsakis
2013-07-25 03:07:44 -07:00
Michael Sullivan
387df4e127
Fix the issue-3979 tests and add a new test.
2013-07-23 17:06:56 -07:00
Alex Crichton
5c6069141b
Add a test for #5844 (a closed issue now)
2013-07-22 23:09:21 -07:00
Patrick Walton
06594ed96b
librustc: Remove pub extern
and priv extern
from the language.
...
Place `pub` or `priv` on individual items instead.
2013-07-20 17:39:38 -07:00
bors
5c999d4eca
auto merge of #7894 : pcwalton/rust/and-pointers-in-at-boxes, r=brson
...
r? @brson
2013-07-20 10:55:34 -07:00
Patrick Walton
9089cf2ec9
librustc: Forbid &
pointers (other than &'static
) inside @
boxes.
...
This makes custom borrowing implementations for custom smart pointers
sound.
2013-07-18 17:12:46 -07:00
Michael Sullivan
002bfd7966
Export information about used default methods instead of regenerating it. Closes #7862 .
2013-07-18 13:56:15 -07:00
Patrick Walton
e20549ff19
librustc: Remove all uses of the Copy
bound.
2013-07-17 14:57:53 -07:00
Patrick Walton
99b33f7219
librustc: Remove all uses of "copy".
2013-07-17 14:57:51 -07:00
Huon Wilson
e4f7561bcd
Clean-up tests after debug!/std-macros change.
...
The entire testsuite is converted to using info! rather than debug!
because some depend on the code within the debug! being trans'd.
2013-07-17 03:10:13 +10:00
Michael Sullivan
3fa5203273
Take default methods out from behind the flag.
2013-07-11 15:51:10 -07:00
Michael Sullivan
186f6faf1e
Get cross crate static default methods working. Closes #7569 .
2013-07-11 15:51:10 -07:00
Michael Sullivan
7238d5a141
Make privacy checking on default methods for cross crate structs not fail. Closes #7481 .
...
It is unclear to me that the way method call privacy checking is done
makes any sense, though. It is only performed if the type is a
struct...
2013-07-03 09:59:45 -07:00
Patrick Walton
1c0aa78481
librustc: Change "Owned" to "Send" everywhere
2013-06-28 10:44:15 -04:00
Patrick Walton
1eec3bba13
librustc: Rename Const to Freeze
2013-06-28 10:44:15 -04:00
Luqman Aden
ca2966c6d0
Change finalize -> drop.
2013-06-25 21:14:39 -04:00
Alex Crichton
1841b31c61
Add 'static mut' items to the language
2013-06-23 17:59:35 -07:00
Daniel Micay
d2e9912aea
vec: remove BaseIter implementation
...
I removed the `static-method-test.rs` test because it was heavily based
on `BaseIter` and there are plenty of other more complex uses of static
methods anyway.
2013-06-23 02:05:20 -04:00
Michael Sullivan
1a8969f64b
Get cross crate default methods working.
...
This fixes the large number of problems that prevented cross crate
methods from ever working. It also fixes a couple lingering bugs with
polymorphic default methods and cleans up some of the code paths.
Closes #4102 . Closes #4103 .
2013-06-20 15:42:16 -07:00
Niko Matsakis
eb48c29681
Add copies to type params with Copy bound
2013-06-16 12:47:36 -04:00
Daniel Micay
ec27644870
automated whitespace fixes
2013-06-13 18:03:08 -04:00
Patrick Walton
16086ecff7
libsyntax: Remove pub impl
from the language
2013-06-04 21:45:42 -07:00
bors
24e85ac82d
auto merge of #6880 : thomaslee/rust/issue-6745, r=catamorphism
...
This fixes #6745 , which itself relates to #4202 . Slightly ham-fisted -- feel particularly funny about using the typeck phase to gather the base -> impl mapping, and the separate code paths for traits vs. "real" bases feels like it could be avoided -- but it seems to work.
As always, open to suggestions if there's a better way to accomplish what I'm trying to do.
@catamorphism r?
2013-06-01 15:46:40 -07:00
Patrick Walton
5fb254695b
Remove all uses of pub impl
. rs=style
2013-06-01 09:18:27 -07:00
Tom Lee
f6fa5b91e2
Reexport static methods on structs & enums.
2013-06-01 04:14:58 -07:00