about summary refs log tree commit diff
path: root/src/librustc_resolve/diagnostics.rs
AgeCommit message (Collapse)AuthorLines
2019-05-03rustc: factor most DefId-containing variants out of Def and into DefKind.Eduard-Mihai Burtescu-16/+22
2019-04-19remove duplicated code and simplify logicEsteban Küber-59/+34
2019-04-19Identify missing ambiguous case with best effort suggestionEsteban Küber-47/+81
2019-04-18review comments: change wordingEsteban Küber-1/+1
2019-04-18Change suggestion of field when not in self contextEsteban Küber-10/+12
2019-04-17Rename error_reporting to diagnosticsYuki OKUSHI-0/+856
2019-04-17Rename diagnostics to error_codesYuki OKUSHI-1672/+0
2019-02-07Adjust generic const param resolutionvarkor-14/+0
2019-02-07Fix E0670 doc errorvarkor-1/+4
2019-02-07Add error for const parameters depending on type parametersvarkor-2/+13
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07librustc_resolve => 2018Taiki Endo-0/+2
2019-01-03Fix repeated word typosWiktor Kuchta-1/+1
Found with `git grep -P '\b([a-z]+)\s+\1\b'`
2018-12-25Remove licensesMark Rousskov-10/+0
2018-12-11std: Depend directly on crates.io cratesAlex Crichton-4/+2
Ever since we added a Cargo-based build system for the compiler the standard library has always been a little special, it's never been able to depend on crates.io crates for runtime dependencies. This has been a result of various limitations, namely that Cargo doesn't understand that crates from crates.io depend on libcore, so Cargo tries to build crates before libcore is finished. I had an idea this afternoon, however, which lifts the strategy from #52919 to directly depend on crates.io crates from the standard library. After all is said and done this removes a whopping three submodules that we need to manage! The basic idea here is that for any crate `std` depends on it adds an *optional* dependency on an empty crate on crates.io, in this case named `rustc-std-workspace-core`. This crate is overridden via `[patch]` in this repository to point to a local crate we write, and *that* has a `path` dependency on libcore. Note that all `no_std` crates also depend on `compiler_builtins`, but if we're not using submodules we can publish `compiler_builtins` to crates.io and all crates can depend on it anyway! The basic strategy then looks like: * The standard library (or some transitive dep) decides to depend on a crate `foo`. * The standard library adds ```toml [dependencies] foo = { version = "0.1", features = ['rustc-dep-of-std'] } ``` * The crate `foo` has an optional dependency on `rustc-std-workspace-core` * The crate `foo` has an optional dependency on `compiler_builtins` * The crate `foo` has a feature `rustc-dep-of-std` which activates these crates and any other necessary infrastructure in the crate. A sample commit for `dlmalloc` [turns out to be quite simple][commit]. After that all `no_std` crates should largely build "as is" and still be publishable on crates.io! Notably they should be able to continue to use stable Rust if necessary, since the `rename-dependency` feature of Cargo is soon stabilizing. As a proof of concept, this commit removes the `dlmalloc`, `libcompiler_builtins`, and `libc` submodules from this repository. Long thorns in our side these are now gone for good and we can directly depend on crates.io! It's hoped that in the long term we can bring in other crates as necessary, but for now this is largely intended to simply make it easier to manage these crates and remove submodules. This should be a transparent non-breaking change for all users, but one possible stickler is that this almost for sure breaks out-of-tree `std`-building tools like `xargo` and `cargo-xbuild`. I think it should be relatively easy to get them working, however, as all that's needed is an entry in the `[patch]` section used to build the standard library. Hopefully we can work with these tools to solve this problem! [commit]: https://github.com/alexcrichton/dlmalloc-rs/commit/28ee12db813a3b650a7c25d1c36d2c17dcb88ae3
2018-11-18resolve: Avoid sentence breaks in diagnosticsVadim Petrochenkov-1/+1
2018-08-18Added feature gate.Alexander Regueiro-1/+2
2018-08-18Updated diagnostics.Alexander Regueiro-4/+4
2018-07-11Fix typo in E0433 docsFelix Rabe-1/+1
2018-06-17Fixed minor error in Compiler Error Index, E0603.Eric Findlay-1/+1
2018-06-09Update E0423 descriptionEsteban Küber-4/+30
E0423 doesn't apply only to structs, update the error index description to make this clear.
2018-05-01Remove `macro_reexport`Vadim Petrochenkov-71/+2
It's subsumed by `feature(use_extern_macros)` and `pub use`
2018-02-28Remove E0245; improve E0404 explanationMark Mansi-2/+22
2018-02-17fix E0260 error index doctestQuietMisdreavus-0/+2
2018-01-21Rollup merge of #47512 - GuillaumeGomez:e0659, r=petrochenkovGuillaume Gomez-0/+53
Add E0659 for ambiguous names Still on the tracks of the "no error without error code" road.
2018-01-18Add E0659 for ambiguous namesGuillaume Gomez-0/+53
2018-01-15Reexport -> re-export in error messagesCarol (Nichols || Goulding)-5/+5
2017-10-08doc-test: In Markdown tests, Use all of `<h1>` to `<h6>` as the test name.kennytm-3/+3
This mainly simplifies debugging error index tests, as the error codes are `<h2>`s in the huge document containing all codes.
2017-07-08Remove more anonymous trait method parametersVadim Petrochenkov-1/+1
2017-07-06remove associated_consts feature gateSean McArthur-2/+0
2017-06-23Removed as many "```ignore" as possible.kennytm-41/+57
Replaced by adding extra imports, adding hidden code (`# ...`), modifying examples to be runnable (sorry Homura), specifying non-Rust code, and converting to should_panic, no_run, or compile_fail. Remaining "```ignore"s received an explanation why they are being ignored.
2017-06-13Merge crate `collections` into `alloc`Murarth-9/+9
2017-06-02Add E0603 error codeGuillaume Gomez-0/+29
2017-05-28Add note regarding parent module containing use statement.Mark Simulacrum-0/+26
2017-05-13rustc_resolve: don't deny outer type parameters in embedded constants.Eduard-Mihai Burtescu-8/+7
2017-03-27Fix broken Markdown and bad links in the error indexOliver Middleton-1/+5
This makes sure RFC links point to the RFC text not the pull request.
2017-02-25rustc: store type parameter defaults outside of ty::Generics.Eduard-Mihai Burtescu-0/+27
2016-12-26More systematic error reporting in path resolutionVadim Petrochenkov-1/+26
2016-11-21Stabilize RFC 1560.Jeffrey Seyfried-1/+1
2016-10-31Add E0532 error explanationAndreas Sommer-1/+41
2016-10-27Preparations and cleanupVadim Petrochenkov-25/+1
Diagnostics for struct path resolution errors in resolve and typeck are unified. Self type is treated as a type alias in few places (not reachable yet). Unsafe cell is seen in constants even through type aliases. All checks for struct paths in typeck work on type level.
2016-10-24Import macros in `resolve` instead of in `metadata::macro_import`.Jeffrey Seyfried-0/+179
2016-08-30Add E0530 error explanationggomez-2/+36
2016-08-17Add new error code testsGuillaume Gomez-1/+1
2016-08-05Add new error code testsGuillaume Gomez-0/+1
2016-08-05Add E0254 error explanationGuillaume Gomez-1/+39
2016-06-29Rollup merge of #34467 - GuillaumeGomez:err-codes, r=brsonManish Goregaokar-82/+207
Add new error codes and improve some explanations r? @brson cc @steveklabnik cc @jonathandturner
2016-06-26Add new error codes and improve some explanationsGuillaume Gomez-82/+207
2016-06-23Improve diagnostics E0425: `use` (public) itemsLiigo Zhuang-0/+11
E0425: unresolved name
2016-06-18Remove unused functions calls and unused E0406Guillaume Gomez-1/+1
2016-06-10Address review comments + fix rebaseVadim Petrochenkov-126/+16