7486 Commits

Author SHA1 Message Date
Nick Cameron
e9db5fb202 Tidying up, fix some minor linkage bugs, use ty flags to avoid caching closure types. 2015-06-08 11:41:48 +12:00
bors
ae74652b4a Auto merge of #26057 - audebert:master, r=alexcrichton
The constraint referenced here is:

```rust
fn foo<T>(t: T) where T: Trait<AssociatedType=u32> { /* */ }
```
2015-06-07 00:07:07 +00:00
Rémi Audebert
27dd0dda1b Fix small typo in diagnostics.rs 2015-06-06 18:32:49 +02:00
bors
bfd072db45 Auto merge of #26038 - eddyb:dst-nested, r=luqmana
Allows `Rc<RefCell<Trait>>` and other containers. Fixes #25351.
r? @nrc This is the discussed strategy, more or less.
2015-06-06 15:32:26 +00:00
Eduard Burtescu
01dee1b77e Allow nested generics for the last field of structs in unsizing. 2015-06-05 20:49:23 +03:00
bors
75fb009c76 Auto merge of #26023 - arielb1:fast-sized, r=eddyb
r? @eddyb 

The change to `trans::common::type_is_sized` is because we currently abort, rather than return random results, on overflow.
2015-06-05 15:27:34 +00:00
Ariel Ben-Yehuda
595409df06 Introduce a fast-path for type_is_sized/type_moves_by_default
This seems to improve performance by the same 2-3% of my selection
fast-path.
2015-06-05 03:50:49 +03:00
bors
e0ca6b1a31 Auto merge of #25975 - arielb1:remove-param-space, r=nikomatsakis
r? @nikomatsakis
2015-06-04 21:48:58 +00:00
Ms2ger
f2cca31e3d Inline enum_variant_ids into its only caller. 2015-06-04 10:12:19 +02:00
Ariel Ben-Yehuda
4b116fe38c Use a plain Vec instead of VecPerParamSpace in trait selection. 2015-06-04 00:19:18 +03:00
Ms2ger
53897baec8 Remove unused get_enum_variant_defs functions. 2015-06-03 18:58:26 +02:00
bors
dc1e79b3c2 Auto merge of #25926 - Ms2ger:enum_variant_ids, r=alexcrichton 2015-06-02 20:05:49 +00:00
bors
cc85db4ce6 Auto merge of #25868 - alexcrichton:issue-25505, r=brson
The compiler already has special support for fixing up verbatim paths with disks
on Windows to something that can be correctly passed down to gcc, and this
commit adds support for verbatim UNC paths as well.

Closes #25505
2015-06-02 16:37:21 +00:00
Guillaume Gomez
dbfc8c5a07 Update diagnostics.rs 2015-06-01 12:33:41 +02:00
Guillaume Gomez
42c5c982c4 Remove full path 2015-06-01 10:46:28 +02:00
Ms2ger
9c837c0450 Return an iterator from enum_variant_ids. 2015-06-01 10:38:29 +02:00
Guillaume Gomez
9eb416b8a4 Add E0011 explanation 2015-05-31 19:34:03 +02:00
Steve Klabnik
c0a41b9999 Rollup merge of #25873 - nham:update_E0015, r=Aatch
The E0397 explanation, as I've written it, isn't really an explanation, but I'm not sure what to put here. I will happily take suggestions.

Partially addresses https://github.com/rust-lang/rust/issues/25851
2015-05-29 15:24:47 -04:00
bors
84254948c2 Auto merge of #25880 - nikomatsakis:const-fn-feature-gate-calls, r=alexcrichton
The previous feature gate assumed we would not define any (stable) const fns. But then @eddyb went and cleaned up the code. So this now extends the feature-gate to prohibit calls; but calls inside of macros are considered ok.

r? @alexcrichton
2015-05-29 17:38:40 +00:00
Niko Matsakis
2c5e784d6f add const_fn features 2015-05-29 09:42:54 -04:00
Niko Matsakis
57c75b6b10 permit const-fn in macro expansions 2015-05-29 09:42:54 -04:00
Niko Matsakis
710270d9c0 Add feature-gate to calling const fn 2015-05-29 09:42:53 -04:00
bors
2de64ef305 Auto merge of #25760 - Ms2ger:tagged_docs, r=Manishearth 2015-05-29 13:19:46 +00:00
Nick Hamann
fdf3ce76cf Change E0015 and E0378 explanations to link to text of RFC 911, not rfc PR. 2015-05-28 21:12:46 -05:00
Nick Hamann
364035497c Revise E0015 according to feedback. 2015-05-28 21:02:13 -05:00
Nick Hamann
7e78e708fb Convert mutable statics error to have error code and add explanation.
Also changes 'owned pointers' => 'boxes' in the error message.
2015-05-28 19:28:07 -05:00
Alex Crichton
2627ae32f2 rustc: Fixup verbatim UNC paths as well on Windows
The compiler already has special support for fixing up verbatim paths with disks
on Windows to something that can be correctly passed down to gcc, and this
commit adds support for verbatim UNC paths as well.

Closes #25505
2015-05-28 16:49:42 -07:00
Nick Hamann
eb15030dc1 Add error explanations for E0040, E0087, E0378, E0379, E0394. 2015-05-28 17:54:19 -05:00
Nick Hamann
f6074406db Update E0015 explanation, fix E0053. 2015-05-28 17:54:13 -05:00
Ms2ger
b700b37094 Return a TaggedDocsIterator from each_reexport. 2015-05-28 19:24:43 +02:00
bors
a5a5fcee38 Auto merge of #25834 - steveklabnik:gh25326, r=alexcrichton
Fixes #25326
2015-05-28 13:57:36 +00:00
bors
6a3d55abf0 Auto merge of #25840 - arielb1:ptr-compare-fixes, r=nrc
Fixes #25826.
2015-05-28 03:51:58 +00:00
Ariel Ben-Yehuda
080311d1f9 Prevent comparison and dereferencing of raw pointers in constexprs
Fixes #25826.
2015-05-28 03:22:44 +03:00
bors
f3819f063c Auto merge of #25796 - arielb1:default-assoc, r=eddyb
r? @eddyb

Fixes #19476.
2015-05-27 22:05:09 +00:00
Steve Klabnik
62e5dee1c5 fix example for E0018
Fixes #25326
2015-05-27 14:51:58 -04:00
Ariel Ben-Yehuda
699fc80780 Address review comments 2015-05-27 20:42:42 +03:00
bors
eb16ad6e71 Auto merge of #25790 - eddyb:oh-snap-ctfe-arrived, r=alexcrichton 2015-05-27 08:47:53 +00:00
Eduard Burtescu
377b0900ae Use const fn to abstract away the contents of UnsafeCell & friends. 2015-05-27 11:19:03 +03:00
Eduard Burtescu
6e8e4f847c Remove #[cfg(stage0)] items. 2015-05-27 11:19:02 +03:00
Nick Hamann
570a043576 Convert 15 diagnostics to have error codes (E0380-E0394).
Also adds explanations for E0380 and E0381.
2015-05-26 15:12:52 -05:00
Nick Hamann
b593359f7f Add error explanations for E0055, E0089, E0192, E0261, E0262, E0263, E0318. 2015-05-26 15:12:52 -05:00
bors
0ea80faae8 Auto merge of #25091 - quantheory:trait_associated_const_fixes, r=nikomatsakis
Closes #25046 (by rejecting the code that causes the ICE) and #24946. I haven't been able to deal with the array size or recursion issues yet for associated consts, though my hope was that the change I made for range match patterns might help with array sizes, too.

This PR is pretty much orthogonal to #25065.
2015-05-26 16:58:07 +00:00
Ariel Ben-Yehuda
ae10e478eb Implement defaults for associated types 2015-05-26 17:22:29 +03:00
Ariel Ben-Yehuda
0ec3183df8 Remove ObjectCastMap 2015-05-26 12:33:53 +03:00
Ariel Ben-Yehuda
f4ee40ead2 Use lookup_locally_or_in_crate_store more often 2015-05-26 12:33:53 +03:00
Ariel Ben-Yehuda
c7711002bb Make caching in stability work. This improves stability check performance
by 90%.
2015-05-26 11:38:56 +03:00
Ariel Ben-Yehuda
014bf0df34 Clean-up some junk 2015-05-26 11:38:56 +03:00
Ms2ger
37dd4174d5 Return TaggedDocsIterator from reader::tagged_docs. 2015-05-24 17:30:42 +02:00
bors
ba0e1cd814 Auto merge of #25609 - nikomatsakis:const-fn, r=pnkfelix
This is a port of @eddyb's `const-fn` branch. I rebased it, tweaked a few things, and added tests as well as a feature gate. The set of tests is still pretty rudimentary, I'd appreciate suggestions on new tests to write. Also, a double-check that the feature-gate covers all necessary cases.

One question: currently, the feature-gate allows the *use* of const functions from stable code, just not the definition. This seems to fit our usual strategy, and implies that we might (perhaps) allow some constant functions in libstd someday, even before stabilizing const-fn, if we were willing to commit to the existence of const fns but found some details of their impl unsatisfactory.

r? @pnkfelix
2015-05-24 11:12:34 +00:00
bors
cc56c20ba4 Auto merge of #25168 - Manishearth:register_attr, r=eddyb
This lets plugin authors opt attributes out of the `custom_attribute`
and `unused_attribute` checks.


cc @thepowersgang
2015-05-24 09:38:26 +00:00