about summary refs log tree commit diff
path: root/src/librustc/lint/context.rs
AgeCommit message (Collapse)AuthorLines
2020-01-11move rustc::lint::{context, passes} to rustc_lint.Mazdak Farrokhzad-883/+0
Also do some cleanup of the interface.
2020-01-11lints: promote levels.rs to lint.rs & extract passes.rsMazdak Farrokhzad-2/+2
2020-01-11move logic to LintLevelsBuilderMazdak Farrokhzad-2/+2
2020-01-11canonicalize some lint importsMazdak Farrokhzad-2/+2
2020-01-11prepare moving HardwiredLints to rustc_sessionMazdak Farrokhzad-2/+123
2020-01-11buffered lint infra -> rustc_sessionMazdak Farrokhzad-13/+2
2020-01-11prepare for moving BuiltinLintDiagnostics to rustc_sessionMazdak Farrokhzad-1/+1
2020-01-11Remove unused derivesMazdak Farrokhzad-1/+1
2020-01-10nix syntax::errors & prefer rustc_errors over errorsMazdak Farrokhzad-1/+1
2020-01-08- remove syntax::{span_warn!, span_err!, span_fatal!. struct_err!}Mazdak Farrokhzad-5/+6
- remove syntax::{help!, span_help!, span_note!} - remove unused syntax::{struct_span_fatal, struct_span_err_or_warn!, span_err_or_warn!} - lintify check_for_bindings_named_same_as_variants + conflicting_repr_hints - inline syntax::{struct_span_warn!, diagnostic_used!} - stringify_error_code! -> error_code! & use it more. - find_plugin_registrar: de-fatalize an error - de-fatalize metadata errors - move type_error_struct! to rustc_typeck - struct_span_err! -> rustc_errors
2020-01-05Remove rustc_hir reexports in rustc::hir.Mazdak Farrokhzad-2/+2
2020-01-04canonicalize FxHash{Map,Set} importsMazdak Farrokhzad-2/+1
2020-01-01Move late lint machanism in librustc_lint.Camille GILLOT-451/+8
2020-01-01Move early lint machanism in librustc_lint.Camille GILLOT-364/+8
2020-01-01Rename `syntax_pos` to `rustc_span` in source codeVadim Petrochenkov-1/+1
2019-12-27Syntax for hir::Ty.Camille GILLOT-10/+14
2019-12-26Syntax for hir::Expr.Camille GILLOT-7/+7
2019-12-22Format the worldMark Rousskov-195/+182
2019-12-21Use Arena inside hir::Body.Camille GILLOT-1/+1
2019-12-21Use Arena inside hir::Mod.Camille GILLOT-2/+2
2019-12-21Use Arena inside hir::StructField.Camille GILLOT-1/+1
2019-12-21Use Arena inside hir::EnumDef.Camille GILLOT-2/+2
2019-12-21Use Arena inside hir::ImplItem.Camille GILLOT-1/+1
2019-12-21Use Arena inside hir::TraitItem.Camille GILLOT-1/+1
2019-12-21Use Arena inside hir::ForeignItem.Camille GILLOT-1/+1
2019-12-21Use Arena inside hir::Item.Camille GILLOT-1/+1
2019-12-12Remove `ast::{Impl,Trait}{Item,ItemKind}`.Mazdak Farrokhzad-2/+2
2019-12-12Unify assoc item visitors more.Mazdak Farrokhzad-2/+2
2019-12-12Unify associated item visitor.Mazdak Farrokhzad-2/+2
2019-12-01rustc_plugin: Remove support for adding plugins from command lineVadim Petrochenkov-2/+1
2019-11-29allow customising ty::TraitRef's printing behaviorMikhail Babenko-2/+7
fix clippy allow customising ty::TraitRef's printing behavior fix clippy stylistic fix
2019-11-14Update to use new librustc_error_codes libraryGuillaume Gomez-0/+2
2019-11-12Remove dead code for encoding/decoding lint IDsMark Rousskov-26/+1
This helps decouple the lint system from needing the implicit TLS TyCtxt as well.
2019-11-07Rollup merge of #66044 - RalfJung:uninit-lint, r=oli-obkYuki Okushi-0/+3
Improve uninit/zeroed lint * Also warn when creating a raw pointer with a NULL vtable. * Also identify `MaybeUninit::uninit().assume_init()` and `MaybeUninit::zeroed().assume_init()` as dangerous.
2019-11-03Delete lint buffer from SessionMark Rousskov-13/+13
2019-11-02also identiy MaybeUninit::uninit().assume_init() as dangerousRalf Jung-0/+3
2019-10-23Rollup merge of #65657 - nnethercote:rm-InternedString-properly, r=eddybMazdak Farrokhzad-1/+1
Remove `InternedString` This PR removes `InternedString` by converting all occurrences to `Symbol`. There are a handful of places that need to use the symbol chars instead of the symbol index, e.g. for stable sorting; local conversions `LocalInternedString` is used in those places. r? @eddyb
2019-10-22Add some documentationMark Rousskov-8/+16
2019-10-21Convert fields within `DefPathData` from `InternedString` to `Symbol`.Nicholas Nethercote-1/+1
It's a full conversion, except in `DefKey::compute_stable_hash()` where a `Symbol` now is converted to an `InternedString` before being hashed. This was necessary to avoid test failures.
2019-10-17Update API to be more compatible with plugin needsMark Rousskov-13/+17
Move to using Box<dyn Fn() -> ...> so that we can let plugins register state. This also adds a callback that'll get called from plugin registration so that Clippy and other tools can register lints without using the plugin API. The plugin API still works, but this new API is more compatible with drivers other than rustc.
2019-10-17Create lint store during plugin registrationMark Rousskov-8/+8
Remove lint store from Session
2019-10-17Remove all borrows of lint store from Session from librustcMark Rousskov-8/+13
Access through tcx is fine -- by that point, the lint store is frozen, but direct access through Session will go away in future commits, as lint store is still mutable in early stages of Session, and will be removed completely.
2019-10-17Access future incompatibility information directlyMark Rousskov-4/+0
Avoid querying LintStore when not necessary
2019-10-17Remove side table of future incompatibility infoMark Rousskov-43/+20
Moves this information to a direct field of Lint, which is where it belongs.
2019-10-17Move to storing constructor functions inside LintStoreMark Rousskov-30/+26
This stops storing the pass objects and instead stores constructor functions. The primary effect is that LintStore no longer has any interior mutability.
2019-10-17Take lint passes as constructor functionsMark Rousskov-8/+8
2019-10-17Make get_lints be a static functionMark Rousskov-9/+1
This moves from calling get_lints on instantiated pass objects to the raw object
2019-10-17No longer implicitly register lints when registering passesMark Rousskov-4/+0
This is in preparation for on-demand constructing passes
2019-10-17Split out just registration to separate functionMark Rousskov-27/+13
2019-10-17Split module and crate late pass registrationMark Rousskov-9/+9