clang 20.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
21namespace 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