Steve Klabnik
0a88c8fb19
Rollup merge of #31679 - GuillaumeGomez:long_error_explanation, r=Manishearth
...
r? @Manishearth
2016-02-17 18:14:36 -05:00
Vadim Petrochenkov
06755d90ce
Split PatKind::Enum into PatKind::TupleStruct and PatKind::Path
2016-02-16 00:40:38 +03:00
ggomez
1c8766761e
Global error explanations improvements
2016-02-15 17:57:21 +01:00
Vadim Petrochenkov
9b40e1e5b3
Rename hir::Pat_ and its variants
2016-02-14 15:25:12 +03:00
bors
3548b8c273
Auto merge of #31524 - jonas-schievink:autoderef, r=steveklabnik
2016-02-13 00:16:03 +00:00
Jonas Schievink
650c082b1e
Autoderef in librustc_privacy
2016-02-12 19:28:42 +01:00
bors
ce4b75f256
Auto merge of #30726 - GuillaumeGomez:compile-fail, r=brson
...
r? @brson
cc @alexcrichton
I still need to add error code explanation test with this, but I can't figure out a way to generate the `.md` files in order to test example source codes.
Will fix #27328 .
2016-02-12 18:25:08 +00:00
Alex Crichton
2581b14147
bootstrap: Add a bunch of Cargo.toml files
...
These describe the structure of all our crate dependencies.
2016-02-11 11:12:32 -08:00
Guillaume Gomez
6407b9405f
Update long error explanations
2016-02-07 13:03:35 +01:00
Alex Crichton
2273b52023
mk: Move from -D warnings
to #![deny(warnings)]
...
This commit removes the `-D warnings` flag being passed through the makefiles to
all crates to instead be a crate attribute. We want these attributes always
applied for all our standard builds, and this is more amenable to Cargo-based
builds as well.
Note that all `deny(warnings)` attributes are gated with a `cfg(stage0)`
attribute currently to match the same semantics we have today
2016-01-24 20:35:55 -08:00
Vadim Petrochenkov
2084c2c33a
Rename Def's variants and don't reexport them
2016-01-20 22:31:10 +03:00
Vadim Petrochenkov
ceaaa1bc33
Refactor definitions of ADTs in rustc::middle::def
2016-01-20 21:50:57 +03:00
Manish Goregaokar
22cbdd4b89
Rollup merge of #30864 - jseyfried:no_record_exports, r=nrc
2016-01-15 17:28:29 +05:30
Jeffrey Seyfried
a353490e6f
resolve: Remove record_exports, fixes #4953
2016-01-14 22:51:58 +00:00
Niko Matsakis
259379426c
Revamp the "future incompatible" section to clarify the situation
...
better
2016-01-12 12:53:55 -05:00
Niko Matsakis
005fa14358
Annotate the compiler with information about what it is doing when.
2016-01-05 21:05:50 -05:00
Nick Cameron
95dc7efad0
use structured errors
2015-12-30 14:27:59 +13:00
Alex Crichton
cd1848a1a6
Register new snapshots
...
Lots of cruft to remove!
2015-12-21 09:26:21 -08:00
Vadim Petrochenkov
785cbe0200
Do not substitute type aliases during error reporting
...
Type aliases are still substituted when determining impl publicity
2015-12-18 20:57:36 +03:00
Vadim Petrochenkov
187c89a92a
Address the comments
2015-12-18 04:14:46 +03:00
Vadim Petrochenkov
fcbd553f0f
Substitute type aliases before checking for privacy
2015-12-18 04:14:46 +03:00
Vadim Petrochenkov
a745614f44
Use lint instead of warning
2015-12-18 04:14:46 +03:00
Vadim Petrochenkov
1a9239c964
Report errors not caught by the old visitor as warnings
2015-12-18 04:14:46 +03:00
Vadim Petrochenkov
a09246ad34
Approximate type aliases as public when determining impl publicity
2015-12-18 04:12:31 +03:00
Vadim Petrochenkov
f8ae31f601
Update error messages and error descriptions
2015-12-18 04:12:31 +03:00
Vadim Petrochenkov
f3f27a5c64
Rewrite VisiblePrivateTypesVisitor
2015-12-18 04:12:31 +03:00
Jeffrey Seyfried
8364a6feef
Remove unused imports
2015-12-17 05:43:27 +00:00
Vadim Petrochenkov
be8ace8cac
Remove all uses of #[staged_api]
2015-11-25 21:55:26 +03:00
Manish Goregaokar
352853c18b
Register diagnostics for rustc_privacy and rustc_trans properly
...
fixes #29665
2015-11-22 10:26:22 +05:30
Vadim Petrochenkov
c1ad5af4a6
Changes to data produced by privacy pass
2015-11-19 14:16:35 +03:00
Niko Matsakis
98b046e16e
Various straight-forward ports that override visit_nested_items
...
to do "in-situ" visits.
2015-11-18 19:23:29 -05:00
Vadim Petrochenkov
52acc05f63
Rework stability annotation pass
2015-11-18 01:24:20 +03:00
Oliver Schneider
e36872da5b
ImplItem_ -> ImplItemKind rename
2015-11-16 10:35:30 +01:00
Oliver Schneider
eaaa60dbea
rename ImplItem_::*ImplItem to ImplItem_::*
...
[breaking change]
2015-11-16 10:34:45 +01:00
Vadim Petrochenkov
41ccd44f76
Use exhaustive matching
2015-11-10 12:51:56 +03:00
Vadim Petrochenkov
ef6850643e
rustc_privacy: Fix bugs in SanePrivacyVisitor
2015-11-09 21:15:53 +03:00
Vadim Petrochenkov
1d693976df
EmbargoVisitor::reexports
isn't needed
2015-11-05 18:42:48 +03:00
Vadim Petrochenkov
5092b09648
rustc_privacy: Do not export items needed solely for the reachability analysis
...
Process them in middle::reachable instead
Add tests for reachability of trait methods written in UFCS form
2015-11-05 18:17:33 +03:00
bors
e2bb53ca52
Auto merge of #29291 - petrochenkov:privacy, r=alexcrichton
...
The public set is expanded with trait items, impls and their items, foreign items, exported macros, variant fields, i.e. all the missing parts. Now it's a subset of the exported set.
This is needed for https://github.com/rust-lang/rust/pull/29083 because stability annotation pass uses the public set and all things listed above need to be annotated.
Rustdoc can now be migrated to the public set as well, I guess.
Exported set is now slightly more correct with regard to exported items in blocks - 1) blocks in foreign items are considered and 2) publicity is not inherited from the block's parent - if a function is public it doesn't mean structures defined in its body are public.
r? @alexcrichton or maybe someone else
2015-11-02 23:38:49 +00:00
Vadim Petrochenkov
ab7b3456d0
Parens + issue number + typo
2015-11-03 01:58:41 +03:00
Vadim Petrochenkov
3468b8d42c
Remove PatWildMulti
2015-10-31 03:44:43 +03:00
Vadim Petrochenkov
61cbc84480
Make fields and macro defs exported
2015-10-29 21:54:55 +03:00
Niko Matsakis
19996d4cdf
The source_did
may not be local, so don't unwrap the
...
`as_local_node_id`, instead just compare against `Some(id)`.
Fixes #29161 .
2015-10-28 15:38:09 -04:00
Vadim Petrochenkov
243a524d06
Fix for middle::reachable + better comments and tests
...
In `middle::reachable` mark default impl of a trait method as reachable if this trait method is used from inlinable code
2015-10-28 03:38:22 +03:00
Niko Matsakis
d0a84e0500
Add some debug printouts to librustc_privacy
2015-10-27 18:30:46 -04:00
Vadim Petrochenkov
8cef018d52
Comments and formatting
2015-10-27 21:56:48 +03:00
bors
95fb8d1c87
Auto merge of #29325 - alexcrichton:revert-trait-accessibility, r=nrc
...
These commits revert https://github.com/rust-lang/rust/pull/28504 and add a regression test pointed out by @petrochenkov, it's not immediately clear with the regression that the accessibility check should be removed, so for now preserve the behavior on stable by default.
r? @nrc
2015-10-27 01:04:14 +00:00
Alex Crichton
cb0ce69026
Revert "Remove unnecessary trait accessibility check."
...
This reverts commit f4f95eb3a9
.
2015-10-26 09:16:05 -07:00
Vadim Petrochenkov
e8ddbba2ed
syntax/rustc_front: Simplify VariantData::fields
...
And use VariantData instead of P<VariantData> in Item_ and Variant_
2015-10-25 18:33:51 +03:00
Vadim Petrochenkov
599df16551
rustc_privacy: Expand public node set, build exported node set more correctly
2015-10-25 04:42:31 +03:00