mirror of
https://github.com/encounter/msvc-demangler-rust.git
synced 2026-07-10 12:18:38 -07:00
Make crate no_std compatible
This commit is contained in:
+4
-2
@@ -1,16 +1,18 @@
|
||||
[package]
|
||||
authors = ["Markus Stange <mstange@themasta.com>", "Jeff Muizelaar <jrmuizel@gmail.com>"]
|
||||
name = "msvc-demangler"
|
||||
version = "0.10.1"
|
||||
version = "0.11.0"
|
||||
keywords = ["demangle", "undecorate", "c-plus-plus", "msvc"]
|
||||
license = "MIT/NCSA"
|
||||
documentation = "https://docs.rs/msvc-demangler/"
|
||||
description = "A rust library that demangles / undecorates C++ symbols mangled by MSVC"
|
||||
repository = "https://github.com/mstange/msvc-demangler-rust"
|
||||
readme = "README.md"
|
||||
edition = "2021"
|
||||
categories = ["no-std"]
|
||||
|
||||
[dependencies]
|
||||
bitflags = "2"
|
||||
bitflags = { version = "2", default-features = false }
|
||||
|
||||
[[bin]]
|
||||
name = "undname"
|
||||
|
||||
+1
-7
@@ -29,13 +29,7 @@ fn main() {
|
||||
}
|
||||
let flags = msvc_demangler::DemangleFlags::llvm();
|
||||
let demangled = msvc_demangler::serialize(&parsed, flags);
|
||||
match demangled {
|
||||
Ok(ref string) => println!("{}", string),
|
||||
Err(err) => {
|
||||
eprintln!("error: {}", err);
|
||||
println!("{}", sym);
|
||||
}
|
||||
}
|
||||
println!("{}", demangled);
|
||||
};
|
||||
|
||||
if args.is_empty() {
|
||||
|
||||
+273
-306
File diff suppressed because it is too large
Load Diff
@@ -3,7 +3,7 @@ extern crate msvc_demangler;
|
||||
use msvc_demangler::{demangle, DemangleFlags};
|
||||
|
||||
fn expect_with_flags(input: &str, reference: &str, flags: u32) {
|
||||
let demangled = demangle(input, ::DemangleFlags::from_bits(flags).unwrap());
|
||||
let demangled = demangle(input, DemangleFlags::from_bits(flags).unwrap());
|
||||
let reference = reference.to_owned();
|
||||
if let Ok(demangled) = demangled {
|
||||
assert_eq!(demangled, reference);
|
||||
@@ -14,7 +14,7 @@ fn expect_with_flags(input: &str, reference: &str, flags: u32) {
|
||||
|
||||
// For cases where undname demangles differently/better than we do.
|
||||
fn expect_failure(input: &str, reference: &str) {
|
||||
let demangled = demangle(input, ::DemangleFlags::COMPLETE).unwrap();
|
||||
let demangled = demangle(input, DemangleFlags::COMPLETE).unwrap();
|
||||
let reference = reference.to_owned();
|
||||
assert_ne!(demangled, reference);
|
||||
}
|
||||
|
||||
+1
-1
@@ -77,7 +77,7 @@ macro_rules! llvm_test {
|
||||
for case in parse_cases(rules.lines()) {
|
||||
if case.not_invalid {
|
||||
let parsed = dbg!(parse(case.mangled).unwrap());
|
||||
let demangled = serialize(&parsed, DemangleFlags::llvm()).unwrap();
|
||||
let demangled = serialize(&parsed, DemangleFlags::llvm());
|
||||
println!(" mangled: {}", case.mangled);
|
||||
println!("demangled ref: {}", case.demangled_ref);
|
||||
println!(" demangled: {}", &demangled);
|
||||
|
||||
Reference in New Issue
Block a user