clang  19.0.0git
ABI.h
Go to the documentation of this file.
1 //===----- ABI.h - ABI related declarations ---------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 ///
9 /// \file
10 /// Enums/classes describing ABI related information about constructors,
11 /// destructors and thunks.
12 ///
13 //===----------------------------------------------------------------------===//
14 
15 #ifndef LLVM_CLANG_BASIC_ABI_H
16 #define LLVM_CLANG_BASIC_ABI_H
17 
18 #include "llvm/Support/DataTypes.h"
19 #include <cstring>
20 
21 namespace clang {
22 
23 /// C++ constructor types.
25  Ctor_Complete, ///< Complete object ctor
26  Ctor_Base, ///< Base object ctor
27  Ctor_Comdat, ///< The COMDAT used for ctors
28  Ctor_CopyingClosure, ///< Copying closure variant of a ctor
29  Ctor_DefaultClosure, ///< Default closure variant of a ctor
30 };
31 
32 /// C++ destructor types.
34  Dtor_Deleting, ///< Deleting dtor
35  Dtor_Complete, ///< Complete object dtor
36  Dtor_Base, ///< Base object dtor
37  Dtor_Comdat ///< The COMDAT used for dtors
38 };
39 
40 } // end namespace clang
41 
42 #endif
The JSON file list parser is used to communicate input to InstallAPI.
CXXCtorType
C++ constructor types.
Definition: ABI.h:24
@ Ctor_Base
Base object ctor.
Definition: ABI.h:26
@ Ctor_DefaultClosure
Default closure variant of a ctor.
Definition: ABI.h:29
@ Ctor_CopyingClosure
Copying closure variant of a ctor.
Definition: ABI.h:28
@ Ctor_Complete
Complete object ctor.
Definition: ABI.h:25
@ Ctor_Comdat
The COMDAT used for ctors.
Definition: ABI.h:27
CXXDtorType
C++ destructor types.
Definition: ABI.h:33
@ Dtor_Comdat
The COMDAT used for dtors.
Definition: ABI.h:37
@ Dtor_Base
Base object dtor.
Definition: ABI.h:36
@ Dtor_Complete
Complete object dtor.
Definition: ABI.h:35
@ Dtor_Deleting
Deleting dtor.
Definition: ABI.h:34