Module syntax::feature_gate [] [src]

Unstable (rustc_private)

Feature gating

This module implements the gating necessary for preventing certain compiler features from being used by default. This module will crawl a pre-expanded AST to ensure that there are no features which are used that are not enabled.

Features are enabled in programs via the crate-level attributes of #![feature(...)] with a comma-separated list of features.

For the purpose of future feature-tracking, once code for detection of feature gate usage is added, do not remove it again even once the feature becomes stable.

Structs

Features [Unstable]

A set of features to be used by later passes.

GatedCfg [Unstable]

Enums

AttributeGate [Unstable]
AttributeType [Unstable]
GateIssue [Unstable]
GatedCfgAttr [Unstable]
UnstableFeatures [Unstable]

Constants

EXPLAIN_ALLOW_INTERNAL_UNSTABLE [Unstable]
EXPLAIN_ASM [Unstable]
EXPLAIN_CONCAT_IDENTS [Unstable]
EXPLAIN_CUSTOM_DERIVE [Unstable]
EXPLAIN_DERIVE_UNDERSCORE [Unstable]
EXPLAIN_LOG_SYNTAX [Unstable]
EXPLAIN_PLACEMENT_IN [Unstable]
EXPLAIN_TRACE_MACROS [Unstable]
KNOWN_ATTRIBUTES [Unstable]

Functions

check_attribute [Unstable]
check_crate [Unstable]
emit_feature_err [Unstable]
get_features [Unstable]