Commit graph

1221 commits

Author SHA1 Message Date
Ariel Ben-Yehuda
3dc780ed6f use RegionEscape instead of inherent has_escaping_regions fns 2015-09-14 15:15:48 +03:00
Ariel Ben-Yehuda
5a95acb8ab split ty::util and ty::adjustment 2015-09-14 14:55:56 +03:00
Ariel Ben-Yehuda
5f564fbbe4 split ty.rs into smaller parts 2015-09-14 12:32:52 +03:00
Ariel Ben-Yehuda
caa10c3bde move middle::ty and related modules to middle/ty/ 2015-09-14 10:56:13 +03:00
bors
009f2cf7dd Auto merge of #28392 - arielb1:sort-bounds-list, r=eddyb
The sort key is a (DefId, Name), which is *not* stable between
runs, so we must re-sort when loading.

Fixes #24063
Fixes #25467
Fixes #27222
Fixes #28377

r? @eddyb
2015-09-14 05:08:27 +00:00
Ariel Ben-Yehuda
8478acf695 sort the existential bounds list in tydecode
The sort key is a (DefId, Name), which is *not* stable between
runs, so we must re-sort when loading.

Fixes #24063
Fixes #25467
Fixes #27222
Fixes #28377
2015-09-13 20:59:40 +03:00
Alex Crichton
f0b1326dc7 std: Stabilize/deprecate features for 1.4
The FCP is coming to a close and 1.4 is coming out soon, so this brings in the
libs team decision for all library features this cycle.

Stabilized APIs:

* `<Box<str>>::into_string`
* `Arc::downgrade`
* `Arc::get_mut`
* `Arc::make_mut`
* `Arc::try_unwrap`
* `Box::from_raw`
* `Box::into_raw`
* `CStr::to_str`
* `CStr::to_string_lossy`
* `CString::from_raw`
* `CString::into_raw`
* `IntoRawFd::into_raw_fd`
* `IntoRawFd`
* `IntoRawHandle::into_raw_handle`
* `IntoRawHandle`
* `IntoRawSocket::into_raw_socket`
* `IntoRawSocket`
* `Rc::downgrade`
* `Rc::get_mut`
* `Rc::make_mut`
* `Rc::try_unwrap`
* `Result::expect`
* `String::into_boxed_slice`
* `TcpSocket::read_timeout`
* `TcpSocket::set_read_timeout`
* `TcpSocket::set_write_timeout`
* `TcpSocket::write_timeout`
* `UdpSocket::read_timeout`
* `UdpSocket::set_read_timeout`
* `UdpSocket::set_write_timeout`
* `UdpSocket::write_timeout`
* `Vec::append`
* `Vec::split_off`
* `VecDeque::append`
* `VecDeque::retain`
* `VecDeque::split_off`
* `rc::Weak::upgrade`
* `rc::Weak`
* `slice::Iter::as_slice`
* `slice::IterMut::into_slice`
* `str::CharIndices::as_str`
* `str::Chars::as_str`
* `str::split_at_mut`
* `str::split_at`
* `sync::Weak::upgrade`
* `sync::Weak`
* `thread::park_timeout`
* `thread::sleep`

Deprecated APIs

* `BTreeMap::with_b`
* `BTreeSet::with_b`
* `Option::as_mut_slice`
* `Option::as_slice`
* `Result::as_mut_slice`
* `Result::as_slice`
* `f32::from_str_radix`
* `f64::from_str_radix`

Closes #27277
Closes #27718
Closes #27736
Closes #27764
Closes #27765
Closes #27766
Closes #27767
Closes #27768
Closes #27769
Closes #27771
Closes #27773
Closes #27775
Closes #27776
Closes #27785
Closes #27792
Closes #27795
Closes #27797
2015-09-11 09:48:48 -07:00
bors
d2a5b117c1 Auto merge of #28246 - huonw:lang-tracking-issues, r=alexcrichton
This is similar to the libs version, which allow an `issue` field in the
`#[unstable]` attribute.

cc #28244
2015-09-08 01:02:06 +00:00
Huon Wilson
31310f5b65 Allow tracking issues for lang features.
This is similar to the libs version, which allow an `issue` field in the
`#[unstable]` attribute.

cc #28244
2015-09-08 11:01:42 +10:00
Niko Matsakis
004d70212a track, for each upvar, its index in list of upvars 2015-09-06 07:27:22 -04:00
Manish Goregaokar
d7afefcbd1 Rollup merge of #28234 - AlisdairO:diagnostics247, r=Manishearth
As title :-)
Part of #24407.

r? @Manishearth
2015-09-05 16:16:01 +05:30
Alisdair Owens
8175dce517 Add long diagnostics for E0247 2015-09-04 19:22:11 +01:00
Huon Wilson
2b45a9ab54 Support bitcasts in platform intrinsic generator. 2015-09-04 09:14:13 -07:00
Huon Wilson
62e346af4b Support void in platform intrinsic generator. 2015-09-04 09:14:13 -07:00
Huon Wilson
d12135a70d Add support for pointers to generator.py. 2015-09-04 09:14:12 -07:00
bors
2f77a59d16 Auto merge of #28201 - apasel422:issue-26205, r=nikomatsakis
Closes #26205.

r? @eddyb
2015-09-04 14:16:54 +00:00
Steve Klabnik
055c23da7b Rollup merge of #28167 - petrochenkov:bytelit, r=nikomatsakis
Avoid confusion with binary integer literals and binary operator expressions in libsyntax
2015-09-03 20:10:07 -04:00
Manish Goregaokar
94807b2f9c Rollup merge of #28195 - AlisdairO:diagnostics214, r=Manishearth
As title :-)
Part of #24407.

r? @Manishearth
2015-09-04 01:40:04 +05:30
Andrew Paseltiner
b8dad48435 Fix multiple mutable autoderefs with Box
Closes #26205.
2015-09-03 14:41:27 -04:00
Manish Goregaokar
2a40e46f18 Rollup merge of #28164 - AlisdairO:diagnostics329, r=Manishearth
As title :-)
Part of #24407.

r? @Manishearth
2015-09-03 23:30:36 +05:30
Alisdair Owens
130e8d4ff2 add long diagnostics for E0214 2015-09-03 17:01:50 +01:00
Vadim Petrochenkov
405c616eaf Use consistent terminology for byte string literals
Avoid confusion with binary integer literals and binary operator expressions in libsyntax
2015-09-03 10:54:53 +03:00
Nick Cameron
facdf2ebb1 Add an intital HIR and lowering step 2015-09-03 10:02:36 +12:00
Alisdair Owens
c6b0fccac8 Add long diagnostics for E0329 2015-09-02 15:35:56 +01:00
bors
7780408af6 Auto merge of #28132 - arielb1:uninstantiable, r=nikomatsakis
It is *very* easy to bypass, and is a relic of a bygone age where the type-checker was *much* less robust.

Fixes #27497

r? @nikomatsakis
2015-09-01 23:51:47 +00:00
bors
19a33edaa9 Auto merge of #28060 - GuillaumeGomez:patch-3, r=Manishearth
Part of #24407

r? @Manishearth
2015-09-01 11:58:28 +00:00
Guillaume Gomez
ae0409b695 Add E0439 error explanation 2015-09-01 01:22:44 +02:00
Guillaume Gomez
7daf235277 Add E0440 error explanation 2015-09-01 01:22:44 +02:00
Guillaume Gomez
dc70eca9a4 Add E0441 error explanation 2015-09-01 01:22:43 +02:00
Guillaume Gomez
9259418d26 Add E0443 error explanation 2015-09-01 01:22:43 +02:00
Guillaume Gomez
297b77d49b Add E0442 error explanation 2015-09-01 01:22:43 +02:00
bors
2d3e8379c8 Auto merge of #28079 - huonw:simd, r=alexcrichton
This adds a new Python script (compatible with 2.7 and 3.x) that will consume some JSON files that define a platform's intrinsics. It can output a file that defines the intrinsics in the compiler, or an `extern` block that will import them.

The complexity of the generator is to be DRY: platforms (especially ARM and AArch64) have a lot of repetition with their intrinsics, for different versions with different types, so being able to write it once is nice.
2015-08-31 21:34:08 +00:00
Ariel Ben-Yehuda
321f8d81b8 remove the is_instantiable check
Fixes #27497
2015-08-31 23:54:15 +03:00
bors
f9f82f8dc8 Auto merge of #28009 - GuillaumeGomez:patch-1, r=Manishearth
r? @Manishearth
2015-08-31 16:52:46 +00:00
bors
811868ec6f Auto merge of #28103 - GuillaumeGomez:fix-intrinsic, r=huonw
Fixes #28062
2015-08-31 03:00:21 +00:00
bors
8f28c9b01e Auto merge of #28007 - Ms2ger:FnKind, r=nrc
There is no longer a need for that pattern, since enums are now qualified.
2015-08-31 01:09:40 +00:00
Guillaume Gomez
bc024d261e Add compile-fail test for E0444 2015-08-30 11:29:34 +02:00
Guillaume Gomez
4ad7cbaa51 Add E0444 error code explanation 2015-08-30 09:53:05 +02:00
Guillaume Gomez
78feb4ddf9 Add checkup on number of arguments 2015-08-30 09:52:34 +02:00
Huon Wilson
29dcff3aa2 Support different scalar integer widths in Rust v. LLVM.
Some x86 C intrinsics are declared to take `int ...` (i.e. exposed in
Rust as `i32`), but LLVM implements them by taking `i8` instead.
2015-08-29 20:11:23 -07:00
Huon Wilson
ee2de27996 Add support for aggregates in platform intrinsics.
This adds support for flattened intrinsics, which are called in Rust
with tuples but in LLVM without them (e.g. `foo((a, b))` becomes `foo(a,
b)`). Unflattened ones could be supported, but are not yet.
2015-08-29 15:36:16 -07:00
Huon Wilson
b03ca7f805 Separate integers into signed and unsigned.
This is necessary to reflect the ARM APIs accurately, since some
functions explicitly take an unsigned parameter and a signed one, of the
same integer shape, so the no-duplicates check will fail unless we
distinguish.
2015-08-29 15:36:16 -07:00
Alisdair Owens
8ae2b1d7dd add long diagnostics for E0122 2015-08-29 17:20:46 +01:00
Manish Goregaokar
a3b32ebda4 Rollup merge of #28010 - GuillaumeGomez:patch-2, r=Manishearth
r? @Manishearth
2015-08-28 03:38:36 +05:30
Guillaume Gomez
fbbd874171 Comment out unused error codes in librustc_typeck/diagnostics.rs 2015-08-27 19:16:40 +02:00
Guillaume Gomez
acafe3b730 Add E0370 error explanation 2015-08-26 14:43:28 +02:00
Guillaume Gomez
805e4e6fd1 Remove unnecessary empty lines 2015-08-26 14:28:42 +02:00
Guillaume Gomez
dfb0677bee Remove unnecessary whitespace 2015-08-26 14:23:51 +02:00
Guillaume Gomez
9f15b28119 Add missing ';' in E0132 2015-08-26 14:21:46 +02:00
Guillaume Gomez
0c4faf2a07 Add erroneous code example for E0131 2015-08-26 14:21:03 +02:00