Skip to content

Conversation

@jan-auer
Copy link
Member

ID records specify the mangled format for anonymous namespaces: ?A0x<id>, where id is a hex
identifier of the namespace. Demanglers usually resolve this as "anonymous namespace".

This also fixes an issue with demangling: If the anonymous namespace is in the
beginning of the composed name, it leads the demangler to believe that this is a
mangled MSVC name. However, since this is a composed demangled name, this leads
to a demangle error.

@jan-auer jan-auer requested a review from a team September 10, 2020 10:31
@jan-auer jan-auer self-assigned this Sep 10, 2020
@jan-auer jan-auer merged commit 16b2b58 into master Sep 10, 2020
@jan-auer jan-auer deleted the fix/pdb-inline-anon-ns branch September 10, 2020 14:16
jan-auer added a commit that referenced this pull request Nov 17, 2020
* master: (22 commits)
  fix(debuginfo): Update dmsort to 1.0.1 to avoid panic due to UB (#287)
  ci: Use GHA instead of zeus (#286)
  ref: Introduce explicit NameMangling and better DemangleOptions (#275)
  meta: Bump all semver-major dependencies (#283)
  feat(demangle): Update swift demangler to 5.3 (#282)
  ref: Add File/FunctionIterator and lifetimes to DebugSession (#279)
  fix: Implement new clippy advice (#280)
  fix: Add a SymbolIterator and Lifetimes to ObjectLike trait (#277)
  ci: Switch to GitHub Actions (#273)
  ref: Introduce feature flags for demangling languages (#274)
  ref(common): Change InstructionInfo setters to Option (#272)
  ref: Remove all deprecated items (#271)
  ref: Replace failure with std::error::Error (#264)
  ref: Remove deprecated proguard support (#267)
  build: Reorganize the workspace (#266)
  build(unreal): Rename with-serde to serde (#265)
  fix(debuginfo): Detect mangled anonymous namespaces in PDB inlinees (#261)
  release: 7.5.0
  meta: Update changelog for 7.5.0
  feat: Unsafe transmute for PDB symbols (#258)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants