Microsoft C++ ABI
E284627
The Microsoft C++ ABI is the application binary interface that defines how C++ code is represented, called, and linked on Microsoft platforms, ensuring binary compatibility between compilers and libraries in the Windows ecosystem.
All labels observed (8)
How this entity was disambiguated
This entity first appeared as the object of triple T2629674 — resolving that mention is where its identity was fixed. The disambiguator weighed these candidate entities and picked the highlighted one (or “None”, minting a new entity). This is how homonymy is resolved: the same surface form can point to different entities.
Target entity: Microsoft C++ ABI Context triple: [Clang, supportsABI, Microsoft C++ ABI]
-
A.
MSVC
MSVC (Microsoft Visual C++) is Microsoft's proprietary C and C++ compiler and toolset, widely used for Windows application development and integrated into the Visual Studio IDE.
-
B.
Microsoft Foundation Classes
Microsoft Foundation Classes (MFC) is an object-oriented C++ library from Microsoft that simplifies the development of Windows desktop applications by wrapping the Windows API in reusable classes.
-
C.
MVFC
MVFC is a collegiate athletic conference that sponsors NCAA Division I Football Championship Subdivision (FCS) football programs primarily in the Midwestern United States.
-
D.
C++/CLI
C++/CLI is a Microsoft extension of the C++ language designed to interoperate seamlessly with the .NET runtime and managed code.
-
E.
C++
C++ is a high-performance, general-purpose programming language widely used for system/software development, game engines, and performance-critical applications.
- F. None of above. chosen
- G. Unsure - the case is ambiguous/there is not enough information to decide.
Target entity: Microsoft C++ ABI Target entity description: The Microsoft C++ ABI is the application binary interface that defines how C++ code is represented, called, and linked on Microsoft platforms, ensuring binary compatibility between compilers and libraries in the Windows ecosystem.
-
A.
MSVC
MSVC (Microsoft Visual C++) is Microsoft's proprietary C and C++ compiler and toolset, widely used for Windows application development and integrated into the Visual Studio IDE.
-
B.
Microsoft Foundation Classes
Microsoft Foundation Classes (MFC) is an object-oriented C++ library from Microsoft that simplifies the development of Windows desktop applications by wrapping the Windows API in reusable classes.
-
C.
MVFC
MVFC is a collegiate athletic conference that sponsors NCAA Division I Football Championship Subdivision (FCS) football programs primarily in the Midwestern United States.
-
D.
C++/CLI
C++/CLI is a Microsoft extension of the C++ language designed to interoperate seamlessly with the .NET runtime and managed code.
-
E.
C++
C++ is a high-performance, general-purpose programming language widely used for system/software development, game engines, and performance-critical applications.
- F. None of above. chosen
Statements (50)
| Predicate | Object |
|---|---|
| instanceOf |
C++ ABI
ⓘ
application binary interface ⓘ software engineering standard ⓘ |
| defines |
RTTI (run-time type information) representation for C++ on Microsoft platforms
ⓘ
binary interface for C++ class inheritance on Microsoft platforms ⓘ binary interface for inline functions on Microsoft platforms ⓘ binary interface for multiple inheritance in C++ on Microsoft platforms ⓘ binary interface for templates instantiation on Microsoft platforms ⓘ binary interface for virtual inheritance in C++ on Microsoft platforms ⓘ binary representation of C++ namespaces on Microsoft platforms ⓘ calling conventions for C++ functions on Microsoft platforms ⓘ exception handling model for C++ on Microsoft platforms ⓘ layout of C++ exception objects on Microsoft platforms ⓘ layout of C++ stack frames for exception unwinding on Microsoft platforms ⓘ name mangling scheme for C++ symbols on Microsoft platforms ⓘ object layout for C++ classes on Microsoft platforms ⓘ virtual table (vtable) layout for C++ classes on Microsoft platforms ⓘ |
| differsFrom |
Itanium C++ ABI
ⓘ
surface form:
Clang C++ ABI on non-Windows platforms
GCC C++ ABI on Linux ⓘ Itanium C++ ABI ⓘ |
| documentedBy |
Microsoft C++ ABI
self-linksurface differs
ⓘ
surface form:
Microsoft PE/COFF ABI documentation
MSVC ⓘ
surface form:
Microsoft Visual C++ documentation
|
| ensures |
binary compatibility between C++ libraries built with MSVC
ⓘ
binary compatibility between C++ object files on Windows using MSVC ⓘ stable linkage of C++ symbols across MSVC versions when ABI-compatible ⓘ |
| governs |
binary layout of C++ alignment and padding rules on MSVC
ⓘ
binary layout of C++ class data members on MSVC ⓘ binary layout of C++ closures on MSVC ⓘ binary layout of C++ lambdas on MSVC ⓘ binary layout of C++ member function pointers on MSVC ⓘ binary layout of C++ virtual function tables on MSVC ⓘ binary layout of std::string on MSVC ⓘ binary layout of std::vector on MSVC ⓘ |
| influences |
ability to mix C++ libraries built with different MSVC versions
ⓘ
cross-compiler C++ binary compatibility on Windows ⓘ |
| maintainedBy | Microsoft ⓘ |
| relatedTo |
Itanium C++ ABI
ⓘ
Microsoft Visual C++ name mangling ⓘ Microsoft C++ ABI self-linksurface differs ⓘ
surface form:
Microsoft x64 calling convention
Microsoft C++ ABI self-linksurface differs ⓘ
surface form:
Microsoft x86 calling conventions
SEH-based C++ exception handling on Windows ⓘ |
| usedBy |
MSVC toolchain
ⓘ
Microsoft C++ ABI self-linksurface differs ⓘ
surface form:
Microsoft C++ standard library implementation
MSVC ⓘ
surface form:
Microsoft Visual C++ compiler
Windows C++ runtime libraries ⓘ Windows system C++ runtime (MSVCRT and successors) ⓘ |
| usedOnPlatform |
Windows
ⓘ
Windows RT ⓘ
surface form:
Windows ARM
Windows ⓘ
surface form:
Windows x64
Windows 32-bit ⓘ
surface form:
Windows x86
|
How these facts were elicited
The pipeline generated the facts above by prompting gpt-5.1 with this entity's name + description and the instruction below.
You are a knowledge base construction expert. Given a subject entity and a description of it, return factual statements that you know for the subject as a JSON list of dictionaries(triples), where keys must be "subject", "predicate" and "object". The number of facts may be very high, between 25 to 50 or more, for very popular subjects. For less popular subjects, the number of facts can be very low, like 5 or 10. # Requirements - If you don't know the subject at all, return an empty list. - If the subject is not a named entity, return an empty list. - Include at least one triple where predicate is "instanceOf". - Do not get too wordy. - Separate several objects into multiple triples with one object.
Subject: Microsoft C++ ABI Description of subject: The Microsoft C++ ABI is the application binary interface that defines how C++ code is represented, called, and linked on Microsoft platforms, ensuring binary compatibility between compilers and libraries in the Windows ecosystem.
Referenced by (8)
Full triples — surface form annotated when it differs from this entity's canonical label.