demumble
brew install demumble
v1.3.0
Apache-2.0
More powerful symbol demangler (a la c++filt)
3
30-day installs · #12522
8
90-day · #12908
26
365-day · #13153
397
★ GitHub stars · updated 2y ago
Build dependencies
Links
- https://github.com/nico/demumble
- GitHub: nico/demumble
- Brew formula source: Formula/d/demumble.rb
Raw metadata
{
"aliases": [],
"alternatives": [],
"build_dependencies": [
"cmake"
],
"categories": [],
"caveats": null,
"conflicts_with": [],
"dependencies": [],
"deprecated": 0,
"deprecation_reason": null,
"desc": "More powerful symbol demangler (a la c++filt)",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:36:54+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "demumble",
"github_default_branch": "main",
"github_last_commit_at": "2024-08-06T02:00:21Z",
"github_readme_excerpt": "# demumble\n\n`demumble` demangles both Itanium and Visual Studio symbols. It runs on\nboth POSIX and Windows.\n\n $ demumble _Z4funcPci\n func(char*, int)\n $ demumble \u0027?Fx_i@@YAHP6AHH@Z@Z\u0027\n int __cdecl Fx_i(int (__cdecl *)(int))\n\nIt can also demangle D, Rust, and Swift symbols.\n\n## Download\n\nThere are prebuilt x64 binaries for Linux, Mac (10.9+), and Windows on the\n[releases page](https://github.com/nico/demumble/releases).\n\n## But why\n\nIt has several nice features that c++filt lacks (and lacks many of c++filt\u0027s\nfeatures I never use).\n\nSmart about underscores: C++ symbols have an additional leading underscore on\nmacOS. `operator new` is mangled as `_Znw` on Linux but `__Znw` on Mac. macOS\u0027s\nc++filt automatically strips one leading underscore, but Linux\u0027s c++filt\ndoesn\u0027t. So if you want to demangle a Linux symbol on macOS, you need to pass\n`-n` to tell it to not strip the underscore, and if you want to demangle an OS\nX symbol on Linux you likewise need to pass `-_`. demumble just does the right\nthing:\n\n $ c++filt _Znw\n _Znw\n $ c++filt __Znw\n operator new\n $ demumble _Znw\n operator new\n $ demumble __Znw\n operator new\n\nSmart about filtering: Both c++filt and demumble can work as a stdin filter.\ndemumble only demangles function symbols (which never look like other words),\nwhile c++filt on macOS defaults to demangling type names too, which are likely\nto look like regular words. demumble does demangle types when they\u0027re passed\nas args without requiring the `--types` switch that c++filt needs on Linux:\n\n # on macOS:\n $ echo \u0027I like Pi and _Znw\u0027 | c++filt\n I like int* and _Znw\n $ echo \u0027I like Pi and _Znw\u0027 | demumble\n I like Pi and operator new\n $ c++filt Pi\n int*\n $ demumble Pi\n int*\n # on Linux:\n $ c++filt Pi\n Pi\n\nCross-platform: demumble runs on Windows. demumble can demangle Windows-style\nsymbols (also when running on non-Windows).\n\n $ demumble \u0027??2@YAPEAX_K@Z\u0027\n void * __cdecl operator new(unsigned ",
"github_repo": "nico/demumble",
"github_stars": 397,
"github_topics": [],
"homepage": "https://github.com/nico/demumble",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 3,
"installs_365d": 26,
"installs_90d": 8,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "Apache-2.0",
"llm_generated_at": null,
"llm_model": null,
"name": "demumble",
"oldnames": [],
"one_liner": null,
"optional_dependencies": [],
"rank_30d": 12522,
"rank_365d": 13153,
"rank_90d": 12908,
"raw_hash": "ebcbf0cdf95f6ecd",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/d/demumble.rb",
"tap": "homebrew/core",
"test_dependencies": [],
"uses_from_macos": [],
"version_head": "HEAD",
"version_stable": "1.3.0",
"versioned_formulae": [],
"why_use_this": null
}