2016-01-15 06:16:54 -06:00
|
|
|
//! Various checks
|
|
|
|
//!
|
|
|
|
//! # Note
|
|
|
|
//!
|
|
|
|
//! This API is completely unstable and subject to change.
|
|
|
|
|
|
|
|
#![doc(html_logo_url = "https://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
|
2016-01-21 17:26:19 -06:00
|
|
|
html_favicon_url = "https://doc.rust-lang.org/favicon.ico",
|
|
|
|
html_root_url = "https://doc.rust-lang.org/nightly/")]
|
2016-01-15 06:16:54 -06:00
|
|
|
|
2018-09-26 16:26:46 -05:00
|
|
|
#![feature(nll)]
|
2016-01-15 06:16:54 -06:00
|
|
|
#![feature(rustc_diagnostic_macros)]
|
2017-05-08 16:36:44 -05:00
|
|
|
|
2018-12-13 09:57:25 -06:00
|
|
|
#![recursion_limit="256"]
|
|
|
|
|
2016-07-20 20:31:14 -05:00
|
|
|
#[macro_use]
|
|
|
|
extern crate rustc;
|
2017-12-27 14:32:01 -06:00
|
|
|
extern crate rustc_mir;
|
2018-02-27 10:11:14 -06:00
|
|
|
extern crate rustc_data_structures;
|
2016-01-15 06:16:54 -06:00
|
|
|
|
2016-07-20 20:31:14 -05:00
|
|
|
#[macro_use]
|
|
|
|
extern crate log;
|
|
|
|
#[macro_use]
|
|
|
|
extern crate syntax;
|
2016-06-21 17:08:13 -05:00
|
|
|
extern crate syntax_pos;
|
|
|
|
extern crate rustc_errors as errors;
|
2016-01-15 06:16:54 -06:00
|
|
|
|
2018-06-13 08:44:43 -05:00
|
|
|
use rustc::ty::query::Providers;
|
2017-09-11 12:09:14 -05:00
|
|
|
|
2017-08-18 19:09:55 -05:00
|
|
|
mod diagnostics;
|
2016-01-21 03:52:37 -06:00
|
|
|
|
2016-03-06 06:54:44 -06:00
|
|
|
pub mod ast_validation;
|
2018-01-29 11:54:37 -06:00
|
|
|
pub mod rvalue_promotion;
|
2016-11-04 10:37:39 -05:00
|
|
|
pub mod hir_stats;
|
2016-01-21 03:52:37 -06:00
|
|
|
pub mod loops;
|
2017-07-31 01:22:09 -05:00
|
|
|
|
|
|
|
__build_diagnostic_array! { librustc_passes, DIAGNOSTICS }
|
2017-09-11 12:09:14 -05:00
|
|
|
|
|
|
|
pub fn provide(providers: &mut Providers) {
|
2018-01-29 11:54:37 -06:00
|
|
|
rvalue_promotion::provide(providers);
|
2018-06-06 15:13:52 -05:00
|
|
|
loops::provide(providers);
|
2017-09-11 12:09:14 -05:00
|
|
|
}
|