Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>ABI LensNew to Visual Studio Code? Get it now.
ABI Lens

ABI Lens

Anmol TYAGI

|
22 installs
| (0) | Free
ABI Lens: Inspect your C++ binary interface inline struct layouts, v-tables, calling conventions, and symbol mangling at a glance.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

ABI Lens

A VS Code extension to help C++ developers inspect their Application Binary Interface (ABI) inline struct/class memory layouts, v-tables, and calling conventions at a glance.

Features

  • Hover Inspection
    Hover over any user-defined struct or class to see its record layout: field offsets, sizes, alignment, padding. Hover Inspection demo

  • File Summary
    Run “ABI Lens: Show File ABI” to output layouts for all user-defined types in the active file into an output channel. Hover Inspection demo

  • Markdown Tooltips & Output
    ABI details are rendered as Markdown code blocks in both hover tooltips and the ABI Lens output channel.

Usage

  1. Open the Command Palette
    Press Ctrl+Shift+P (Windows/Linux) or Cmd+Shift+P (macOS).

  2. Type ABI Lens:
    Then pick “Show File ABI” to generate a summary for all user-defined types in the current file.

  3. Hover in editor
    Open any C/C++ file (.cpp, .h, etc.) and hover over a user-defined struct or class name to see its inline ABI layout.

Requirements

  • Clang/LLVM with clang++ on your PATH
    • Linux:
      sudo apt install clang llvm
      
    • macOS:
      brew install llvm
      export PATH="$(brew --prefix llvm)/bin:$PATH"
      
    • Windows:
      Install LLVM via the official installer or Chocolatey:
      choco install llvm
      

Extension Settings

This extension contributes no customizable settings.

Known Issues

  • Only user-defined types in the active file are shown; hovering on library or standard types is ignored.
  • Very large files with many types may take a few seconds to process the layout dump.
  • Requires a successful syntax-only compile; files with errors will not produce layouts.
  • User-defined types must actually be used in the code; otherwise, the compiler may optimize them away and no information will be available.

Changelog

0.1.0

  • Initial release
    • Hover Inspection for user types
    • Show File ABI summary command
    • Custom type filtering
    • Markdown-formatted tooltips and output channel

Enjoy crystal-clear ABI insights!

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft