Module syntex_syntax::feature_gate [] [src]

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

A set of features to be used by later passes.

GatedCfg

Enums

AttributeGate
AttributeType
GateIssue
GatedCfgAttr
UnstableFeatures

Constants

EXPLAIN_ALLOW_INTERNAL_UNSTABLE
EXPLAIN_ASM
EXPLAIN_CONCAT_IDENTS
EXPLAIN_CUSTOM_DERIVE
EXPLAIN_LOG_SYNTAX
EXPLAIN_TRACE_MACROS
KNOWN_ATTRIBUTES

Functions

check_crate
check_crate_macros
check_for_box_syntax
check_for_placement_in
check_for_pushpop_syntax
emit_feature_err