Skip to content

Commit d37b6e0

Browse files
committed
fix demo
1 parent ef9b4ae commit d37b6e0

File tree

4 files changed

+16
-22
lines changed

4 files changed

+16
-22
lines changed

demo/Cargo.lock

Lines changed: 0 additions & 7 deletions
This file was deleted.

demo/Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ version = "0.0.0"
55
edition = "2021"
66

77
[dependencies]
8+
rustc_public = { path = "../", features = ["rustc_internal"] }
9+
10+
[workspace]
811

912
[package.metadata.rust-analyzer]
1013
# This crate uses #[feature(rustc_private)].

demo/run_demo.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ REPO_DIR=$(git rev-parse --show-toplevel)
66
DEMO_DIR="${REPO_DIR}/demo"
77

88
cd "${DEMO_DIR}"
9-
cargo run -- src/main.rs --crate-name demo --edition 2021 -C panic=abort
9+
cargo run -- ../tests/print/basic_function.rs --crate-name bf --edition 2021 -C panic=abort
1010

demo/src/main.rs

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,42 +5,40 @@
55

66
extern crate rustc_driver;
77
extern crate rustc_interface;
8-
#[macro_use]
9-
extern crate rustc_smir;
10-
extern crate stable_mir;
8+
extern crate rustc_middle;
119

1210
use std::collections::HashSet;
1311
use std::io::stdout;
14-
use rustc_smir::{run, rustc_internal};
15-
use stable_mir::{CompilerError, CrateDef};
12+
use rustc_public::run;
13+
use rustc_public::{CompilerError, CrateDef};
1614
use std::ops::ControlFlow;
1715
use std::process::ExitCode;
18-
use stable_mir::mir::{LocalDecl, MirVisitor, Terminator, TerminatorKind};
19-
use stable_mir::mir::mono::Instance;
20-
use stable_mir::mir::visit::Location;
21-
use stable_mir::ty::{RigidTy, Ty, TyKind};
16+
use rustc_public::mir::{LocalDecl, MirVisitor, Terminator, TerminatorKind};
17+
use rustc_public::mir::mono::Instance;
18+
use rustc_public::mir::visit::Location;
19+
use rustc_public::ty::{RigidTy, Ty, TyKind};
2220

2321

2422
/// This is a wrapper that can be used to replace rustc.
2523
fn main() -> ExitCode {
26-
let rustc_args = std::env::args().into_iter().collect();
27-
let result = run!(rustc_args, start_demo);
24+
let rustc_args: Vec<String> = std::env::args().collect();
25+
let result = run!(&rustc_args, start_demo);
2826
match result {
2927
Ok(_) | Err(CompilerError::Skipped | CompilerError::Interrupted(_)) => ExitCode::SUCCESS,
3028
_ => ExitCode::FAILURE,
3129
}
3230
}
3331

3432
fn start_demo() -> ControlFlow<()> {
35-
let crate_name = stable_mir::local_crate().name;
33+
let crate_name = rustc_public::local_crate().name;
3634
eprintln!("--- Analyzing crate: {crate_name}");
3735

38-
let crate_items = stable_mir::all_local_items();
36+
let crate_items = rustc_public::all_local_items();
3937
for item in crate_items {
4038
eprintln!(" - {} @{:?}", item.name(), item.span())
4139
}
4240

43-
let entry_fn = stable_mir::entry_fn().unwrap();
41+
let entry_fn = rustc_public::entry_fn().unwrap();
4442
let entry_instance = Instance::try_from(entry_fn).unwrap();
4543
analyze_instance(entry_instance);
4644
ControlFlow::Break(())

0 commit comments

Comments
 (0)