+// ignore-tidy-filelength
+
//! A double-ended queue implemented with a growable ring buffer.
//!
//! This queue has `O(1)` amortized inserts and removals from both ends of the
+// ignore-tidy-filelength
+
//! Numeric traits and functions for the built-in numeric types.
#![stable(feature = "rust1", since = "1.0.0")]
+// ignore-tidy-filelength
+
//! Manually manage memory through raw pointers.
//!
//! *[See also the pointer primitive types](../../std/primitive.pointer.html).*
+// ignore-tidy-filelength
+
//! Slice management and manipulation.
//!
//! For more details see [`std::slice`].
+// ignore-tidy-filelength
+
//! String manipulation.
//!
//! For more details, see the `std::str` module.
+// ignore-tidy-filelength
+
//! Lowers the AST to the HIR.
//!
//! Since the AST and HIR are fairly similar, this is mostly a simple procedure,
+// ignore-tidy-filelength
+
//! MIR datatypes and passes. See the [rustc guide] for more info.
//!
//! [rustc guide]: https://rust-lang.github.io/rustc-guide/mir/index.html
+// ignore-tidy-filelength
+
//! Contains infrastructure for configuring the compiler, including parsing
//! command line options.
+// ignore-tidy-filelength
+
//! Candidate selection. See the [rustc guide] for more information on how this works.
//!
//! [rustc guide]: https://rust-lang.github.io/rustc-guide/traits/resolution.html#selection
+// ignore-tidy-filelength
+
//! Type context book-keeping.
use crate::arena::Arena;
+// ignore-tidy-filelength
+
#![allow(usage_of_ty_tykind)]
pub use self::Variance::*;
+// ignore-tidy-filelength
+
use rustc_apfloat::{Category, ExpInt, IEK_INF, IEK_NAN, IEK_ZERO};
use rustc_apfloat::{Float, FloatConvert, ParseError, Round, Status};
use rustc_apfloat::ieee::{Half, Single, Double, Quad, X87DoubleExtended};
+// ignore-tidy-filelength
+
#![doc(html_root_url = "https://doc.rust-lang.org/nightly/")]
#![feature(crate_visibility_modifier)]
+// ignore-tidy-filelength
+
/*!
# typeck: check phase
// ignore-tidy-linelength
+// ignore-tidy-filelength
+
#![allow(non_snake_case)]
register_long_diagnostics! {
+// ignore-tidy-filelength
+
//! This module contains the "cleaned" pieces of the AST, and the functions
//! that clean them.
+// ignore-tidy-filelength
+
//! Rustdoc's HTML rendering module.
//!
//! This modules contains the bulk of the logic necessary for rendering a
+// ignore-tidy-filelength
+
use self::Entry::*;
use hashbrown::hash_map as base;
+// ignore-tidy-filelength
+
//! Filesystem manipulation operations.
//!
//! This module contains basic methods to manipulate the contents of the local
+// ignore-tidy-filelength
+
//! Cross-platform path manipulation.
//!
//! This module provides two types, [`PathBuf`] and [`Path`][`Path`] (akin to [`String`]
+// ignore-tidy-filelength
+
//! Multi-producer, single-consumer FIFO queue communication primitives.
//!
//! This module provides message-based communication over channels, concretely
+// ignore-tidy-filelength
+
use crate::ast::{AngleBracketedArgs, AsyncArgument, ParenthesizedArgs, AttrStyle, BareFnTy};
use crate::ast::{GenericBound, TraitBoundModifier};
use crate::ast::Unsafety;
+// ignore-tidy-filelength
+
use crate::ast::{self, BlockCheckMode, PatKind, RangeEnd, RangeSyntax};
use crate::ast::{SelfKind, GenericBound, TraitBoundModifier};
use crate::ast::{Attribute, MacDelimiter, GenericArg};
+// ignore-tidy-filelength
+//
// run-pass
+
#![allow(unused_variables)]
+
macro_rules! m(
($e1:expr => $e2:expr) => ({ $e1 })
);
+// ignore-tidy-filelength
+
use crate::common::CompareMode;
use crate::common::{expected_output_path, UI_EXTENSIONS, UI_FIXED, UI_STDERR, UI_STDOUT};
use crate::common::{output_base_dir, output_base_name, output_testname_unique};