Make crate no_std compatible

This commit is contained in:
Luke Street
2025-02-04 23:14:59 -07:00
parent 8bf673ed63
commit d8ccb2a4b2
5 changed files with 281 additions and 318 deletions
+4 -2
View File
@@ -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
View File
@@ -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
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -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
View File
@@ -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);