Skip to content
Snippets Groups Projects
  • Bob Wilson's avatar
    4e5f9fb4
    Ignore the "novtable" declspec when not using the Microsoft C++ ABI. · 4e5f9fb4
    Bob Wilson authored
    Clang used to silently ignore __declspec(novtable). It is implemented
    now, but leaving the vtable uninitialized does not work when using the
    Itanium ABI, where the class layout for complex class hierarchies is
    stored in the vtable. It might be possible to honor the novtable
    attribute in some simple cases and either report an error or ignore
    it in more complex situations, but it’s not clear if that would be
    worthwhile. There is also value in having a simple and predictable
    behavior, so this changes clang to simply ignore novtable when not using
    the Microsoft C++ ABI.
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@242730 91177308-0d34-0410-b5e6-96231b3b80d8
    4e5f9fb4
    History
    Ignore the "novtable" declspec when not using the Microsoft C++ ABI.
    Bob Wilson authored
    Clang used to silently ignore __declspec(novtable). It is implemented
    now, but leaving the vtable uninitialized does not work when using the
    Itanium ABI, where the class layout for complex class hierarchies is
    stored in the vtable. It might be possible to honor the novtable
    attribute in some simple cases and either report an error or ignore
    it in more complex situations, but it’s not clear if that would be
    worthwhile. There is also value in having a simple and predictable
    behavior, so this changes clang to simply ignore novtable when not using
    the Microsoft C++ ABI.
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@242730 91177308-0d34-0410-b5e6-96231b3b80d8
Code owners
Assign users and groups as approvers for specific file changes. Learn more.