mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-26 00:34:06 +00:00
Remove support for -Zast-json and -Zast-json-noexpand
This commit is contained in:
parent
a2591639ec
commit
15e0d8bdb1
@ -41,9 +41,6 @@ use std::convert::TryFrom;
|
|||||||
use std::fmt;
|
use std::fmt;
|
||||||
use std::mem;
|
use std::mem;
|
||||||
|
|
||||||
#[cfg(test)]
|
|
||||||
mod tests;
|
|
||||||
|
|
||||||
/// A "Label" is an identifier of some point in sources,
|
/// A "Label" is an identifier of some point in sources,
|
||||||
/// e.g. in the following code:
|
/// e.g. in the following code:
|
||||||
///
|
///
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
use super::*;
|
|
||||||
|
|
||||||
// Are ASTs encodable?
|
|
||||||
#[test]
|
|
||||||
fn check_asts_encodable() {
|
|
||||||
fn assert_encodable<
|
|
||||||
T: for<'a> rustc_serialize::Encodable<rustc_serialize::json::Encoder<'a>>,
|
|
||||||
>() {
|
|
||||||
}
|
|
||||||
assert_encodable::<Crate>();
|
|
||||||
}
|
|
@ -343,10 +343,7 @@ fn run_compiler(
|
|||||||
return early_exit();
|
return early_exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
if sess.opts.debugging_opts.parse_only
|
if sess.opts.debugging_opts.parse_only || sess.opts.debugging_opts.show_span.is_some() {
|
||||||
|| sess.opts.debugging_opts.show_span.is_some()
|
|
||||||
|| sess.opts.debugging_opts.ast_json_noexpand
|
|
||||||
{
|
|
||||||
return early_exit();
|
return early_exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -375,7 +372,7 @@ fn run_compiler(
|
|||||||
|
|
||||||
queries.global_ctxt()?;
|
queries.global_ctxt()?;
|
||||||
|
|
||||||
if sess.opts.debugging_opts.no_analysis || sess.opts.debugging_opts.ast_json {
|
if sess.opts.debugging_opts.no_analysis {
|
||||||
return early_exit();
|
return early_exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -27,7 +27,6 @@ use rustc_passes::{self, hir_stats, layout_test};
|
|||||||
use rustc_plugin_impl as plugin;
|
use rustc_plugin_impl as plugin;
|
||||||
use rustc_query_impl::{OnDiskCache, Queries as TcxQueries};
|
use rustc_query_impl::{OnDiskCache, Queries as TcxQueries};
|
||||||
use rustc_resolve::{Resolver, ResolverArenas};
|
use rustc_resolve::{Resolver, ResolverArenas};
|
||||||
use rustc_serialize::json;
|
|
||||||
use rustc_session::config::{CrateType, Input, OutputFilenames, OutputType};
|
use rustc_session::config::{CrateType, Input, OutputFilenames, OutputType};
|
||||||
use rustc_session::cstore::{MetadataLoader, MetadataLoaderDyn};
|
use rustc_session::cstore::{MetadataLoader, MetadataLoaderDyn};
|
||||||
use rustc_session::output::{filename_for_input, filename_for_metadata};
|
use rustc_session::output::{filename_for_input, filename_for_metadata};
|
||||||
@ -59,10 +58,6 @@ pub fn parse<'a>(sess: &'a Session, input: &Input) -> PResult<'a, ast::Crate> {
|
|||||||
}
|
}
|
||||||
})?;
|
})?;
|
||||||
|
|
||||||
if sess.opts.debugging_opts.ast_json_noexpand {
|
|
||||||
println!("{}", json::as_json(&krate));
|
|
||||||
}
|
|
||||||
|
|
||||||
if sess.opts.debugging_opts.input_stats {
|
if sess.opts.debugging_opts.input_stats {
|
||||||
eprintln!("Lines of code: {}", sess.source_map().count_lines());
|
eprintln!("Lines of code: {}", sess.source_map().count_lines());
|
||||||
eprintln!("Pre-expansion node count: {}", count_nodes(&krate));
|
eprintln!("Pre-expansion node count: {}", count_nodes(&krate));
|
||||||
@ -423,10 +418,6 @@ pub fn configure_and_expand(
|
|||||||
hir_stats::print_ast_stats(&krate, "POST EXPANSION AST STATS");
|
hir_stats::print_ast_stats(&krate, "POST EXPANSION AST STATS");
|
||||||
}
|
}
|
||||||
|
|
||||||
if sess.opts.debugging_opts.ast_json {
|
|
||||||
println!("{}", json::as_json(&krate));
|
|
||||||
}
|
|
||||||
|
|
||||||
resolver.resolve_crate(&krate);
|
resolver.resolve_crate(&krate);
|
||||||
|
|
||||||
// Needs to go *after* expansion to be able to check the results of macro expansion.
|
// Needs to go *after* expansion to be able to check the results of macro expansion.
|
||||||
|
@ -644,8 +644,6 @@ fn test_debugging_options_tracking_hash() {
|
|||||||
// Make sure that changing an [UNTRACKED] option leaves the hash unchanged.
|
// Make sure that changing an [UNTRACKED] option leaves the hash unchanged.
|
||||||
// This list is in alphabetical order.
|
// This list is in alphabetical order.
|
||||||
untracked!(assert_incr_state, Some(String::from("loaded")));
|
untracked!(assert_incr_state, Some(String::from("loaded")));
|
||||||
untracked!(ast_json, true);
|
|
||||||
untracked!(ast_json_noexpand, true);
|
|
||||||
untracked!(borrowck, String::from("other"));
|
untracked!(borrowck, String::from("other"));
|
||||||
untracked!(deduplicate_diagnostics, false);
|
untracked!(deduplicate_diagnostics, false);
|
||||||
untracked!(dep_tasks, true);
|
untracked!(dep_tasks, true);
|
||||||
|
@ -1207,10 +1207,6 @@ options! {
|
|||||||
assert_incr_state: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
assert_incr_state: Option<String> = (None, parse_opt_string, [UNTRACKED],
|
||||||
"assert that the incremental cache is in given state: \
|
"assert that the incremental cache is in given state: \
|
||||||
either `loaded` or `not-loaded`."),
|
either `loaded` or `not-loaded`."),
|
||||||
ast_json: bool = (false, parse_bool, [UNTRACKED],
|
|
||||||
"print the AST as JSON and halt (default: no)"),
|
|
||||||
ast_json_noexpand: bool = (false, parse_bool, [UNTRACKED],
|
|
||||||
"print the pre-expansion AST as JSON and halt (default: no)"),
|
|
||||||
binary_dep_depinfo: bool = (false, parse_bool, [TRACKED],
|
binary_dep_depinfo: bool = (false, parse_bool, [TRACKED],
|
||||||
"include artifacts (sysroot, crate dependencies) used during compilation in dep-info \
|
"include artifacts (sysroot, crate dependencies) used during compilation in dep-info \
|
||||||
(default: no)"),
|
(default: no)"),
|
||||||
|
@ -1,56 +0,0 @@
|
|||||||
// Test that AST json serialization doesn't ICE (#63728).
|
|
||||||
|
|
||||||
// revisions: expand noexpand
|
|
||||||
|
|
||||||
//[expand] compile-flags: -Zast-json
|
|
||||||
//[noexpand] compile-flags: -Zast-json-noexpand
|
|
||||||
|
|
||||||
// check-pass
|
|
||||||
// dont-check-compiler-stdout - don't check for any AST change.
|
|
||||||
|
|
||||||
enum V {
|
|
||||||
A(i32),
|
|
||||||
B { f: [i64; 3 + 4] }
|
|
||||||
}
|
|
||||||
|
|
||||||
trait X {
|
|
||||||
type Output;
|
|
||||||
fn read(&self) -> Self::Output;
|
|
||||||
fn write(&mut self, _: Self::Output);
|
|
||||||
}
|
|
||||||
|
|
||||||
macro_rules! call_println {
|
|
||||||
($y:ident) => { println!("{}", $y) }
|
|
||||||
}
|
|
||||||
|
|
||||||
fn main() {
|
|
||||||
let x: (i32) = 35;
|
|
||||||
let y = x as i64<> + 5;
|
|
||||||
|
|
||||||
call_println!(y);
|
|
||||||
|
|
||||||
struct A;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Regressions tests for issues #78398 and #78510 (captured tokens in associated and foreign items)
|
|
||||||
|
|
||||||
struct S;
|
|
||||||
|
|
||||||
macro_rules! mac_extern {
|
|
||||||
($i:item) => {
|
|
||||||
extern "C" { $i }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
macro_rules! mac_assoc {
|
|
||||||
($i:item) => {
|
|
||||||
impl S { $i }
|
|
||||||
trait Bar { $i }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
mac_extern! {
|
|
||||||
fn foo();
|
|
||||||
}
|
|
||||||
mac_assoc! {
|
|
||||||
fn foo() {}
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
// Check that AST json printing works.
|
|
||||||
#![crate_type = "lib"]
|
|
||||||
|
|
||||||
// check-pass
|
|
||||||
// compile-flags: -Zast-json-noexpand
|
|
||||||
// normalize-stdout-test ":\d+" -> ":0"
|
|
||||||
|
|
||||||
// Only include a single item to reduce how often the test output needs
|
|
||||||
// updating.
|
|
||||||
extern crate core;
|
|
@ -1 +0,0 @@
|
|||||||
{"attrs":[{"kind":{"variant":"Normal","fields":[{"path":{"span":{"lo":0,"hi":0},"segments":[{"ident":{"name":"crate_type","span":{"lo":0,"hi":0}},"id":0,"args":null}],"tokens":null},"args":{"variant":"Eq","fields":[{"lo":0,"hi":0},{"variant":"Ast","fields":[{"id":0,"kind":{"variant":"Lit","fields":[{"token":{"kind":"Str","symbol":"lib","suffix":null},"kind":{"variant":"Str","fields":["lib","Cooked"]},"span":{"lo":0,"hi":0}}]},"span":{"lo":0,"hi":0},"attrs":{"0":null},"tokens":{"0":[[{"variant":"Token","fields":[{"kind":{"variant":"Literal","fields":[{"kind":"Str","symbol":"lib","suffix":null}]},"span":{"lo":0,"hi":0}}]},"Alone"]]}}]}]},"tokens":null},{"0":[[{"variant":"Token","fields":[{"kind":"Pound","span":{"lo":0,"hi":0}}]},"Joint"],[{"variant":"Token","fields":[{"kind":"Not","span":{"lo":0,"hi":0}}]},"Alone"],[{"variant":"Delimited","fields":[{"open":{"lo":0,"hi":0},"close":{"lo":0,"hi":0}},"Bracket",{"0":[[{"variant":"Token","fields":[{"kind":{"variant":"Ident","fields":["crate_type",false]},"span":{"lo":0,"hi":0}}]},"Alone"],[{"variant":"Token","fields":[{"kind":"Eq","span":{"lo":0,"hi":0}}]},"Alone"],[{"variant":"Token","fields":[{"kind":{"variant":"Literal","fields":[{"kind":"Str","symbol":"lib","suffix":null}]},"span":{"lo":0,"hi":0}}]},"Alone"]]}]},"Alone"]]}]},"id":null,"style":"Inner","span":{"lo":0,"hi":0}}],"items":[{"attrs":[],"id":0,"span":{"lo":0,"hi":0},"vis":{"kind":"Inherited","span":{"lo":0,"hi":0},"tokens":null},"ident":{"name":"core","span":{"lo":0,"hi":0}},"kind":{"variant":"ExternCrate","fields":[null]},"tokens":null}],"spans":{"inner_span":{"lo":0,"hi":0},"inject_use_span":{"lo":0,"hi":0}},"id":0,"is_placeholder":false}
|
|
@ -1,10 +0,0 @@
|
|||||||
// Check that AST json printing works.
|
|
||||||
#![crate_type = "lib"]
|
|
||||||
|
|
||||||
// check-pass
|
|
||||||
// compile-flags: -Zast-json
|
|
||||||
// normalize-stdout-test ":\d+" -> ":0"
|
|
||||||
|
|
||||||
// Only include a single item to reduce how often the test output needs
|
|
||||||
// updating.
|
|
||||||
extern crate core;
|
|
@ -1 +0,0 @@
|
|||||||
{"attrs":[{"kind":{"variant":"Normal","fields":[{"path":{"span":{"lo":0,"hi":0},"segments":[{"ident":{"name":"crate_type","span":{"lo":0,"hi":0}},"id":0,"args":null}],"tokens":null},"args":{"variant":"Eq","fields":[{"lo":0,"hi":0},{"variant":"Ast","fields":[{"id":0,"kind":{"variant":"Lit","fields":[{"token":{"kind":"Str","symbol":"lib","suffix":null},"kind":{"variant":"Str","fields":["lib","Cooked"]},"span":{"lo":0,"hi":0}}]},"span":{"lo":0,"hi":0},"attrs":{"0":null},"tokens":{"0":[[{"variant":"Token","fields":[{"kind":{"variant":"Literal","fields":[{"kind":"Str","symbol":"lib","suffix":null}]},"span":{"lo":0,"hi":0}}]},"Alone"]]}}]}]},"tokens":null},{"0":[[{"variant":"Token","fields":[{"kind":"Pound","span":{"lo":0,"hi":0}}]},"Joint"],[{"variant":"Token","fields":[{"kind":"Not","span":{"lo":0,"hi":0}}]},"Alone"],[{"variant":"Delimited","fields":[{"open":{"lo":0,"hi":0},"close":{"lo":0,"hi":0}},"Bracket",{"0":[[{"variant":"Token","fields":[{"kind":{"variant":"Ident","fields":["crate_type",false]},"span":{"lo":0,"hi":0}}]},"Alone"],[{"variant":"Token","fields":[{"kind":"Eq","span":{"lo":0,"hi":0}}]},"Alone"],[{"variant":"Token","fields":[{"kind":{"variant":"Literal","fields":[{"kind":"Str","symbol":"lib","suffix":null}]},"span":{"lo":0,"hi":0}}]},"Alone"]]}]},"Alone"]]}]},"id":null,"style":"Inner","span":{"lo":0,"hi":0}}],"items":[{"attrs":[{"kind":{"variant":"Normal","fields":[{"path":{"span":{"lo":0,"hi":0},"segments":[{"ident":{"name":"prelude_import","span":{"lo":0,"hi":0}},"id":0,"args":null}],"tokens":null},"args":"Empty","tokens":null},null]},"id":null,"style":"Outer","span":{"lo":0,"hi":0}}],"id":0,"span":{"lo":0,"hi":0},"vis":{"kind":"Inherited","span":{"lo":0,"hi":0},"tokens":null},"ident":{"name":"","span":{"lo":0,"hi":0}},"kind":{"variant":"Use","fields":[{"prefix":{"span":{"lo":0,"hi":0},"segments":[{"ident":{"name":"{{root}}","span":{"lo":0,"hi":0}},"id":0,"args":null},{"ident":{"name":"std","span":{"lo":0,"hi":0}},"id":0,"args":null},{"ident":{"name":"prelude","span":{"lo":0,"hi":0}},"id":0,"args":null},{"ident":{"name":"rust_2015","span":{"lo":0,"hi":0}},"id":0,"args":null}],"tokens":null},"kind":"Glob","span":{"lo":0,"hi":0}}]},"tokens":null},{"attrs":[{"kind":{"variant":"Normal","fields":[{"path":{"span":{"lo":0,"hi":0},"segments":[{"ident":{"name":"macro_use","span":{"lo":0,"hi":0}},"id":0,"args":null}],"tokens":null},"args":"Empty","tokens":null},null]},"id":null,"style":"Outer","span":{"lo":0,"hi":0}}],"id":0,"span":{"lo":0,"hi":0},"vis":{"kind":"Inherited","span":{"lo":0,"hi":0},"tokens":null},"ident":{"name":"std","span":{"lo":0,"hi":0}},"kind":{"variant":"ExternCrate","fields":[null]},"tokens":null},{"attrs":[],"id":0,"span":{"lo":0,"hi":0},"vis":{"kind":"Inherited","span":{"lo":0,"hi":0},"tokens":null},"ident":{"name":"core","span":{"lo":0,"hi":0}},"kind":{"variant":"ExternCrate","fields":[null]},"tokens":null}],"spans":{"inner_span":{"lo":0,"hi":0},"inject_use_span":{"lo":0,"hi":0}},"id":0,"is_placeholder":false}
|
|
Loading…
Reference in New Issue
Block a user