Commit eea2de108d
Changed files (5)
src-self-hosted
src/translate_c.cpp
@@ -1061,72 +1061,72 @@ static AstNode *trans_type(Context *c, const ZigClangType *ty, ZigClangSourceLoc
case ZigClangType_FunctionProto:
case ZigClangType_FunctionNoProto:
{
- const clang::FunctionType *fn_ty = reinterpret_cast<const clang::FunctionType*>(ty);
+ const ZigClangFunctionType *fn_ty = reinterpret_cast<const ZigClangFunctionType*>(ty);
AstNode *proto_node = trans_create_node(c, NodeTypeFnProto);
- switch (fn_ty->getCallConv()) {
- case clang::CC_C: // __attribute__((cdecl))
+ switch (ZigClangFunctionType_getCallConv(fn_ty)) {
+ case ZigClangCallingConv_C: // __attribute__((cdecl))
proto_node->data.fn_proto.cc = CallingConventionC;
proto_node->data.fn_proto.is_extern = true;
break;
- case clang::CC_X86StdCall: // __attribute__((stdcall))
+ case ZigClangCallingConv_X86StdCall: // __attribute__((stdcall))
proto_node->data.fn_proto.cc = CallingConventionStdcall;
break;
- case clang::CC_X86FastCall: // __attribute__((fastcall))
+ case ZigClangCallingConv_X86FastCall: // __attribute__((fastcall))
emit_warning(c, source_loc, "unsupported calling convention: x86 fastcall");
return nullptr;
- case clang::CC_X86ThisCall: // __attribute__((thiscall))
+ case ZigClangCallingConv_X86ThisCall: // __attribute__((thiscall))
emit_warning(c, source_loc, "unsupported calling convention: x86 thiscall");
return nullptr;
- case clang::CC_X86VectorCall: // __attribute__((vectorcall))
+ case ZigClangCallingConv_X86VectorCall: // __attribute__((vectorcall))
emit_warning(c, source_loc, "unsupported calling convention: x86 vectorcall");
return nullptr;
- case clang::CC_X86Pascal: // __attribute__((pascal))
+ case ZigClangCallingConv_X86Pascal: // __attribute__((pascal))
emit_warning(c, source_loc, "unsupported calling convention: x86 pascal");
return nullptr;
- case clang::CC_Win64: // __attribute__((ms_abi))
+ case ZigClangCallingConv_Win64: // __attribute__((ms_abi))
emit_warning(c, source_loc, "unsupported calling convention: win64");
return nullptr;
- case clang::CC_X86_64SysV: // __attribute__((sysv_abi))
+ case ZigClangCallingConv_X86_64SysV: // __attribute__((sysv_abi))
emit_warning(c, source_loc, "unsupported calling convention: x86 64sysv");
return nullptr;
- case clang::CC_X86RegCall:
+ case ZigClangCallingConv_X86RegCall:
emit_warning(c, source_loc, "unsupported calling convention: x86 reg");
return nullptr;
- case clang::CC_AAPCS: // __attribute__((pcs("aapcs")))
+ case ZigClangCallingConv_AAPCS: // __attribute__((pcs("aapcs")))
emit_warning(c, source_loc, "unsupported calling convention: aapcs");
return nullptr;
- case clang::CC_AAPCS_VFP: // __attribute__((pcs("aapcs-vfp")))
+ case ZigClangCallingConv_AAPCS_VFP: // __attribute__((pcs("aapcs-vfp")))
emit_warning(c, source_loc, "unsupported calling convention: aapcs-vfp");
return nullptr;
- case clang::CC_IntelOclBicc: // __attribute__((intel_ocl_bicc))
+ case ZigClangCallingConv_IntelOclBicc: // __attribute__((intel_ocl_bicc))
emit_warning(c, source_loc, "unsupported calling convention: intel_ocl_bicc");
return nullptr;
- case clang::CC_SpirFunction: // default for OpenCL functions on SPIR target
+ case ZigClangCallingConv_SpirFunction: // default for OpenCL functions on SPIR target
emit_warning(c, source_loc, "unsupported calling convention: SPIR function");
return nullptr;
- case clang::CC_OpenCLKernel:
+ case ZigClangCallingConv_OpenCLKernel:
emit_warning(c, source_loc, "unsupported calling convention: OpenCLKernel");
return nullptr;
- case clang::CC_Swift:
+ case ZigClangCallingConv_Swift:
emit_warning(c, source_loc, "unsupported calling convention: Swift");
return nullptr;
- case clang::CC_PreserveMost:
+ case ZigClangCallingConv_PreserveMost:
emit_warning(c, source_loc, "unsupported calling convention: PreserveMost");
return nullptr;
- case clang::CC_PreserveAll:
+ case ZigClangCallingConv_PreserveAll:
emit_warning(c, source_loc, "unsupported calling convention: PreserveAll");
return nullptr;
- case clang::CC_AArch64VectorCall:
+ case ZigClangCallingConv_AArch64VectorCall:
emit_warning(c, source_loc, "unsupported calling convention: AArch64VectorCall");
return nullptr;
}
- if (fn_ty->getNoReturnAttr()) {
+ if (ZigClangFunctionType_getNoReturnAttr(fn_ty)) {
proto_node->data.fn_proto.return_type = trans_create_node_symbol_str(c, "noreturn");
} else {
- proto_node->data.fn_proto.return_type = trans_qual_type(c, bitcast(fn_ty->getReturnType()),
- source_loc);
+ proto_node->data.fn_proto.return_type = trans_qual_type(c,
+ ZigClangFunctionType_getReturnType(fn_ty), source_loc);
if (proto_node->data.fn_proto.return_type == nullptr) {
emit_warning(c, source_loc, "unsupported function proto return type");
return nullptr;
src/zig_clang.cpp
@@ -1193,6 +1193,49 @@ static_assert((clang::BuiltinType::Kind)ZigClangBuiltinTypeBuiltinFn == clang::B
static_assert((clang::BuiltinType::Kind)ZigClangBuiltinTypeARCUnbridgedCast == clang::BuiltinType::ARCUnbridgedCast, "");
static_assert((clang::BuiltinType::Kind)ZigClangBuiltinTypeOMPArraySection == clang::BuiltinType::OMPArraySection, "");
+void ZigClang_detect_enum_CallingConv(clang::CallingConv x) {
+ switch (x) {
+ case clang::CC_C:
+ case clang::CC_X86StdCall:
+ case clang::CC_X86FastCall:
+ case clang::CC_X86ThisCall:
+ case clang::CC_X86VectorCall:
+ case clang::CC_X86Pascal:
+ case clang::CC_Win64:
+ case clang::CC_X86_64SysV:
+ case clang::CC_X86RegCall:
+ case clang::CC_AAPCS:
+ case clang::CC_AAPCS_VFP:
+ case clang::CC_IntelOclBicc:
+ case clang::CC_SpirFunction:
+ case clang::CC_OpenCLKernel:
+ case clang::CC_Swift:
+ case clang::CC_PreserveMost:
+ case clang::CC_PreserveAll:
+ case clang::CC_AArch64VectorCall:
+ break;
+ }
+}
+
+static_assert((clang::CallingConv)ZigClangCallingConv_C == clang::CC_C, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_X86StdCall == clang::CC_X86StdCall, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_X86FastCall == clang::CC_X86FastCall, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_X86ThisCall == clang::CC_X86ThisCall, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_X86VectorCall == clang::CC_X86VectorCall, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_X86Pascal == clang::CC_X86Pascal, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_Win64 == clang::CC_Win64, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_X86_64SysV == clang::CC_X86_64SysV, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_X86RegCall == clang::CC_X86RegCall, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_AAPCS == clang::CC_AAPCS, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_AAPCS_VFP == clang::CC_AAPCS_VFP, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_IntelOclBicc == clang::CC_IntelOclBicc, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_SpirFunction == clang::CC_SpirFunction, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_OpenCLKernel == clang::CC_OpenCLKernel, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_Swift == clang::CC_Swift, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_PreserveMost == clang::CC_PreserveMost, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_PreserveAll == clang::CC_PreserveAll, "");
+static_assert((clang::CallingConv)ZigClangCallingConv_AArch64VectorCall == clang::CC_AArch64VectorCall, "");
+
static_assert(sizeof(ZigClangSourceLocation) == sizeof(clang::SourceLocation), "");
static ZigClangSourceLocation bitcast(clang::SourceLocation src) {
@@ -1693,3 +1736,18 @@ enum ZigClangBuiltinTypeKind ZigClangBuiltinType_getKind(const struct ZigClangBu
auto casted = reinterpret_cast<const clang::BuiltinType *>(self);
return (ZigClangBuiltinTypeKind)casted->getKind();
}
+
+bool ZigClangFunctionType_getNoReturnAttr(const struct ZigClangFunctionType *self) {
+ auto casted = reinterpret_cast<const clang::FunctionType *>(self);
+ return casted->getNoReturnAttr();
+}
+
+enum ZigClangCallingConv ZigClangFunctionType_getCallConv(const struct ZigClangFunctionType *self) {
+ auto casted = reinterpret_cast<const clang::FunctionType *>(self);
+ return (ZigClangCallingConv)casted->getCallConv();
+}
+
+struct ZigClangQualType ZigClangFunctionType_getReturnType(const struct ZigClangFunctionType *self) {
+ auto casted = reinterpret_cast<const clang::FunctionType *>(self);
+ return bitcast(casted->getReturnType());
+}
src/zig_clang.h
@@ -101,6 +101,7 @@ struct ZigClangUnaryOperator;
struct ZigClangValueDecl;
struct ZigClangVarDecl;
struct ZigClangWhileStmt;
+struct ZigClangFunctionType;
enum ZigClangBO {
ZigClangBO_PtrMemD,
@@ -678,6 +679,27 @@ enum ZigClangBuiltinTypeKind {
ZigClangBuiltinTypeOMPArraySection,
};
+enum ZigClangCallingConv {
+ ZigClangCallingConv_C, // __attribute__((cdecl))
+ ZigClangCallingConv_X86StdCall, // __attribute__((stdcall))
+ ZigClangCallingConv_X86FastCall, // __attribute__((fastcall))
+ ZigClangCallingConv_X86ThisCall, // __attribute__((thiscall))
+ ZigClangCallingConv_X86VectorCall, // __attribute__((vectorcall))
+ ZigClangCallingConv_X86Pascal, // __attribute__((pascal))
+ ZigClangCallingConv_Win64, // __attribute__((ms_abi))
+ ZigClangCallingConv_X86_64SysV, // __attribute__((sysv_abi))
+ ZigClangCallingConv_X86RegCall, // __attribute__((regcall))
+ ZigClangCallingConv_AAPCS, // __attribute__((pcs("aapcs")))
+ ZigClangCallingConv_AAPCS_VFP, // __attribute__((pcs("aapcs-vfp")))
+ ZigClangCallingConv_IntelOclBicc, // __attribute__((intel_ocl_bicc))
+ ZigClangCallingConv_SpirFunction, // default for OpenCL functions on SPIR target
+ ZigClangCallingConv_OpenCLKernel, // inferred for OpenCL kernels
+ ZigClangCallingConv_Swift, // __attribute__((swiftcall))
+ ZigClangCallingConv_PreserveMost, // __attribute__((preserve_most))
+ ZigClangCallingConv_PreserveAll, // __attribute__((preserve_all))
+ ZigClangCallingConv_AArch64VectorCall, // __attribute__((aarch64_vector_pcs))
+};
+
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangSourceManager_getSpellingLoc(const struct ZigClangSourceManager *,
struct ZigClangSourceLocation Loc);
ZIG_EXTERN_C const char *ZigClangSourceManager_getFilename(const struct ZigClangSourceManager *,
@@ -776,4 +798,8 @@ ZIG_EXTERN_C const struct ZigClangExpr *ZigClangAPValueLValueBase_dyn_cast_Expr(
ZIG_EXTERN_C enum ZigClangBuiltinTypeKind ZigClangBuiltinType_getKind(const struct ZigClangBuiltinType *self);
+ZIG_EXTERN_C bool ZigClangFunctionType_getNoReturnAttr(const struct ZigClangFunctionType *self);
+ZIG_EXTERN_C enum ZigClangCallingConv ZigClangFunctionType_getCallConv(const struct ZigClangFunctionType *self);
+ZIG_EXTERN_C struct ZigClangQualType ZigClangFunctionType_getReturnType(const struct ZigClangFunctionType *self);
+
#endif
src-self-hosted/clang.zig
@@ -69,742 +69,388 @@ pub const struct_ZigClangUnaryOperator = @OpaqueType();
pub const struct_ZigClangValueDecl = @OpaqueType();
pub const struct_ZigClangVarDecl = @OpaqueType();
pub const struct_ZigClangWhileStmt = @OpaqueType();
-pub const ZigClangBO_PtrMemD = enum_ZigClangBO._PtrMemD;
-pub const ZigClangBO_PtrMemI = enum_ZigClangBO._PtrMemI;
-pub const ZigClangBO_Mul = enum_ZigClangBO._Mul;
-pub const ZigClangBO_Div = enum_ZigClangBO._Div;
-pub const ZigClangBO_Rem = enum_ZigClangBO._Rem;
-pub const ZigClangBO_Add = enum_ZigClangBO._Add;
-pub const ZigClangBO_Sub = enum_ZigClangBO._Sub;
-pub const ZigClangBO_Shl = enum_ZigClangBO._Shl;
-pub const ZigClangBO_Shr = enum_ZigClangBO._Shr;
-pub const ZigClangBO_Cmp = enum_ZigClangBO._Cmp;
-pub const ZigClangBO_LT = enum_ZigClangBO._LT;
-pub const ZigClangBO_GT = enum_ZigClangBO._GT;
-pub const ZigClangBO_LE = enum_ZigClangBO._LE;
-pub const ZigClangBO_GE = enum_ZigClangBO._GE;
-pub const ZigClangBO_EQ = enum_ZigClangBO._EQ;
-pub const ZigClangBO_NE = enum_ZigClangBO._NE;
-pub const ZigClangBO_And = enum_ZigClangBO._And;
-pub const ZigClangBO_Xor = enum_ZigClangBO._Xor;
-pub const ZigClangBO_Or = enum_ZigClangBO._Or;
-pub const ZigClangBO_LAnd = enum_ZigClangBO._LAnd;
-pub const ZigClangBO_LOr = enum_ZigClangBO._LOr;
-pub const ZigClangBO_Assign = enum_ZigClangBO._Assign;
-pub const ZigClangBO_MulAssign = enum_ZigClangBO._MulAssign;
-pub const ZigClangBO_DivAssign = enum_ZigClangBO._DivAssign;
-pub const ZigClangBO_RemAssign = enum_ZigClangBO._RemAssign;
-pub const ZigClangBO_AddAssign = enum_ZigClangBO._AddAssign;
-pub const ZigClangBO_SubAssign = enum_ZigClangBO._SubAssign;
-pub const ZigClangBO_ShlAssign = enum_ZigClangBO._ShlAssign;
-pub const ZigClangBO_ShrAssign = enum_ZigClangBO._ShrAssign;
-pub const ZigClangBO_AndAssign = enum_ZigClangBO._AndAssign;
-pub const ZigClangBO_XorAssign = enum_ZigClangBO._XorAssign;
-pub const ZigClangBO_OrAssign = enum_ZigClangBO._OrAssign;
-pub const ZigClangBO_Comma = enum_ZigClangBO._Comma;
-pub const enum_ZigClangBO = extern enum {
- _PtrMemD,
- _PtrMemI,
- _Mul,
- _Div,
- _Rem,
- _Add,
- _Sub,
- _Shl,
- _Shr,
- _Cmp,
- _LT,
- _GT,
- _LE,
- _GE,
- _EQ,
- _NE,
- _And,
- _Xor,
- _Or,
- _LAnd,
- _LOr,
- _Assign,
- _MulAssign,
- _DivAssign,
- _RemAssign,
- _AddAssign,
- _SubAssign,
- _ShlAssign,
- _ShrAssign,
- _AndAssign,
- _XorAssign,
- _OrAssign,
- _Comma,
+pub const ZigClangFunctionType = @OpaqueType();
+
+pub const ZigClangBO = extern enum {
+ PtrMemD,
+ PtrMemI,
+ Mul,
+ Div,
+ Rem,
+ Add,
+ Sub,
+ Shl,
+ Shr,
+ Cmp,
+ LT,
+ GT,
+ LE,
+ GE,
+ EQ,
+ NE,
+ And,
+ Xor,
+ Or,
+ LAnd,
+ LOr,
+ Assign,
+ MulAssign,
+ DivAssign,
+ RemAssign,
+ AddAssign,
+ SubAssign,
+ ShlAssign,
+ ShrAssign,
+ AndAssign,
+ XorAssign,
+ OrAssign,
+ Comma,
};
-pub const ZigClangUO_PostInc = enum_ZigClangUO._PostInc;
-pub const ZigClangUO_PostDec = enum_ZigClangUO._PostDec;
-pub const ZigClangUO_PreInc = enum_ZigClangUO._PreInc;
-pub const ZigClangUO_PreDec = enum_ZigClangUO._PreDec;
-pub const ZigClangUO_AddrOf = enum_ZigClangUO._AddrOf;
-pub const ZigClangUO_Deref = enum_ZigClangUO._Deref;
-pub const ZigClangUO_Plus = enum_ZigClangUO._Plus;
-pub const ZigClangUO_Minus = enum_ZigClangUO._Minus;
-pub const ZigClangUO_Not = enum_ZigClangUO._Not;
-pub const ZigClangUO_LNot = enum_ZigClangUO._LNot;
-pub const ZigClangUO_Real = enum_ZigClangUO._Real;
-pub const ZigClangUO_Imag = enum_ZigClangUO._Imag;
-pub const ZigClangUO_Extension = enum_ZigClangUO._Extension;
-pub const ZigClangUO_Coawait = enum_ZigClangUO._Coawait;
-pub const enum_ZigClangUO = extern enum {
- _PostInc,
- _PostDec,
- _PreInc,
- _PreDec,
- _AddrOf,
- _Deref,
- _Plus,
- _Minus,
- _Not,
- _LNot,
- _Real,
- _Imag,
- _Extension,
- _Coawait,
+
+pub const ZigClangUO = extern enum {
+ PostInc,
+ PostDec,
+ PreInc,
+ PreDec,
+ AddrOf,
+ Deref,
+ Plus,
+ Minus,
+ Not,
+ LNot,
+ Real,
+ Imag,
+ Extension,
+ Coawait,
};
-pub const ZigClangType_Builtin = enum_ZigClangTypeClass.ZigClangType_Builtin;
-pub const ZigClangType_Complex = enum_ZigClangTypeClass.ZigClangType_Complex;
-pub const ZigClangType_Pointer = enum_ZigClangTypeClass.ZigClangType_Pointer;
-pub const ZigClangType_BlockPointer = enum_ZigClangTypeClass.ZigClangType_BlockPointer;
-pub const ZigClangType_LValueReference = enum_ZigClangTypeClass.ZigClangType_LValueReference;
-pub const ZigClangType_RValueReference = enum_ZigClangTypeClass.ZigClangType_RValueReference;
-pub const ZigClangType_MemberPointer = enum_ZigClangTypeClass.ZigClangType_MemberPointer;
-pub const ZigClangType_ConstantArray = enum_ZigClangTypeClass.ZigClangType_ConstantArray;
-pub const ZigClangType_IncompleteArray = enum_ZigClangTypeClass.ZigClangType_IncompleteArray;
-pub const ZigClangType_VariableArray = enum_ZigClangTypeClass.ZigClangType_VariableArray;
-pub const ZigClangType_DependentSizedArray = enum_ZigClangTypeClass.ZigClangType_DependentSizedArray;
-pub const ZigClangType_DependentSizedExtVector = enum_ZigClangTypeClass.ZigClangType_DependentSizedExtVector;
-pub const ZigClangType_DependentAddressSpace = enum_ZigClangTypeClass.ZigClangType_DependentAddressSpace;
-pub const ZigClangType_Vector = enum_ZigClangTypeClass.ZigClangType_Vector;
-pub const ZigClangType_DependentVector = enum_ZigClangTypeClass.ZigClangType_DependentVector;
-pub const ZigClangType_ExtVector = enum_ZigClangTypeClass.ZigClangType_ExtVector;
-pub const ZigClangType_FunctionProto = enum_ZigClangTypeClass.ZigClangType_FunctionProto;
-pub const ZigClangType_FunctionNoProto = enum_ZigClangTypeClass.ZigClangType_FunctionNoProto;
-pub const ZigClangType_UnresolvedUsing = enum_ZigClangTypeClass.ZigClangType_UnresolvedUsing;
-pub const ZigClangType_Paren = enum_ZigClangTypeClass.ZigClangType_Paren;
-pub const ZigClangType_Typedef = enum_ZigClangTypeClass.ZigClangType_Typedef;
-pub const ZigClangType_Adjusted = enum_ZigClangTypeClass.ZigClangType_Adjusted;
-pub const ZigClangType_Decayed = enum_ZigClangTypeClass.ZigClangType_Decayed;
-pub const ZigClangType_TypeOfExpr = enum_ZigClangTypeClass.ZigClangType_TypeOfExpr;
-pub const ZigClangType_TypeOf = enum_ZigClangTypeClass.ZigClangType_TypeOf;
-pub const ZigClangType_Decltype = enum_ZigClangTypeClass.ZigClangType_Decltype;
-pub const ZigClangType_UnaryTransform = enum_ZigClangTypeClass.ZigClangType_UnaryTransform;
-pub const ZigClangType_Record = enum_ZigClangTypeClass.ZigClangType_Record;
-pub const ZigClangType_Enum = enum_ZigClangTypeClass.ZigClangType_Enum;
-pub const ZigClangType_Elaborated = enum_ZigClangTypeClass.ZigClangType_Elaborated;
-pub const ZigClangType_Attributed = enum_ZigClangTypeClass.ZigClangType_Attributed;
-pub const ZigClangType_TemplateTypeParm = enum_ZigClangTypeClass.ZigClangType_TemplateTypeParm;
-pub const ZigClangType_SubstTemplateTypeParm = enum_ZigClangTypeClass.ZigClangType_SubstTemplateTypeParm;
-pub const ZigClangType_SubstTemplateTypeParmPack = enum_ZigClangTypeClass.ZigClangType_SubstTemplateTypeParmPack;
-pub const ZigClangType_TemplateSpecialization = enum_ZigClangTypeClass.ZigClangType_TemplateSpecialization;
-pub const ZigClangType_Auto = enum_ZigClangTypeClass.ZigClangType_Auto;
-pub const ZigClangType_DeducedTemplateSpecialization = enum_ZigClangTypeClass.ZigClangType_DeducedTemplateSpecialization;
-pub const ZigClangType_InjectedClassName = enum_ZigClangTypeClass.ZigClangType_InjectedClassName;
-pub const ZigClangType_DependentName = enum_ZigClangTypeClass.ZigClangType_DependentName;
-pub const ZigClangType_DependentTemplateSpecialization = enum_ZigClangTypeClass.ZigClangType_DependentTemplateSpecialization;
-pub const ZigClangType_PackExpansion = enum_ZigClangTypeClass.ZigClangType_PackExpansion;
-pub const ZigClangType_ObjCTypeParam = enum_ZigClangTypeClass.ZigClangType_ObjCTypeParam;
-pub const ZigClangType_ObjCObject = enum_ZigClangTypeClass.ZigClangType_ObjCObject;
-pub const ZigClangType_ObjCInterface = enum_ZigClangTypeClass.ZigClangType_ObjCInterface;
-pub const ZigClangType_ObjCObjectPointer = enum_ZigClangTypeClass.ZigClangType_ObjCObjectPointer;
-pub const ZigClangType_Pipe = enum_ZigClangTypeClass.ZigClangType_Pipe;
-pub const ZigClangType_Atomic = enum_ZigClangTypeClass.ZigClangType_Atomic;
-pub const enum_ZigClangTypeClass = extern enum {
- ZigClangType_Builtin,
- ZigClangType_Complex,
- ZigClangType_Pointer,
- ZigClangType_BlockPointer,
- ZigClangType_LValueReference,
- ZigClangType_RValueReference,
- ZigClangType_MemberPointer,
- ZigClangType_ConstantArray,
- ZigClangType_IncompleteArray,
- ZigClangType_VariableArray,
- ZigClangType_DependentSizedArray,
- ZigClangType_DependentSizedExtVector,
- ZigClangType_DependentAddressSpace,
- ZigClangType_Vector,
- ZigClangType_DependentVector,
- ZigClangType_ExtVector,
- ZigClangType_FunctionProto,
- ZigClangType_FunctionNoProto,
- ZigClangType_UnresolvedUsing,
- ZigClangType_Paren,
- ZigClangType_Typedef,
- ZigClangType_Adjusted,
- ZigClangType_Decayed,
- ZigClangType_TypeOfExpr,
- ZigClangType_TypeOf,
- ZigClangType_Decltype,
- ZigClangType_UnaryTransform,
- ZigClangType_Record,
- ZigClangType_Enum,
- ZigClangType_Elaborated,
- ZigClangType_Attributed,
- ZigClangType_TemplateTypeParm,
- ZigClangType_SubstTemplateTypeParm,
- ZigClangType_SubstTemplateTypeParmPack,
- ZigClangType_TemplateSpecialization,
- ZigClangType_Auto,
- ZigClangType_DeducedTemplateSpecialization,
- ZigClangType_InjectedClassName,
- ZigClangType_DependentName,
- ZigClangType_DependentTemplateSpecialization,
- ZigClangType_PackExpansion,
- ZigClangType_ObjCTypeParam,
- ZigClangType_ObjCObject,
- ZigClangType_ObjCInterface,
- ZigClangType_ObjCObjectPointer,
- ZigClangType_Pipe,
- ZigClangType_Atomic,
+
+pub const ZigClangTypeClass = extern enum {
+ Builtin,
+ Complex,
+ Pointer,
+ BlockPointer,
+ LValueReference,
+ RValueReference,
+ MemberPointer,
+ ConstantArray,
+ IncompleteArray,
+ VariableArray,
+ DependentSizedArray,
+ DependentSizedExtVector,
+ DependentAddressSpace,
+ Vector,
+ DependentVector,
+ ExtVector,
+ FunctionProto,
+ FunctionNoProto,
+ UnresolvedUsing,
+ Paren,
+ Typedef,
+ Adjusted,
+ Decayed,
+ TypeOfExpr,
+ TypeOf,
+ Decltype,
+ UnaryTransform,
+ Record,
+ Enum,
+ Elaborated,
+ Attributed,
+ TemplateTypeParm,
+ SubstTemplateTypeParm,
+ SubstTemplateTypeParmPack,
+ TemplateSpecialization,
+ Auto,
+ DeducedTemplateSpecialization,
+ InjectedClassName,
+ DependentName,
+ DependentTemplateSpecialization,
+ PackExpansion,
+ ObjCTypeParam,
+ ObjCObject,
+ ObjCInterface,
+ ObjCObjectPointer,
+ Pipe,
+ Atomic,
};
-pub const ZigClangStmt_NoStmtClass = enum_ZigClangStmtClass.ZigClangStmt_NoStmtClass;
-pub const ZigClangStmt_GCCAsmStmtClass = enum_ZigClangStmtClass.ZigClangStmt_GCCAsmStmtClass;
-pub const ZigClangStmt_MSAsmStmtClass = enum_ZigClangStmtClass.ZigClangStmt_MSAsmStmtClass;
-pub const ZigClangStmt_AttributedStmtClass = enum_ZigClangStmtClass.ZigClangStmt_AttributedStmtClass;
-pub const ZigClangStmt_BreakStmtClass = enum_ZigClangStmtClass.ZigClangStmt_BreakStmtClass;
-pub const ZigClangStmt_CXXCatchStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CXXCatchStmtClass;
-pub const ZigClangStmt_CXXForRangeStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CXXForRangeStmtClass;
-pub const ZigClangStmt_CXXTryStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CXXTryStmtClass;
-pub const ZigClangStmt_CapturedStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CapturedStmtClass;
-pub const ZigClangStmt_CompoundStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CompoundStmtClass;
-pub const ZigClangStmt_ContinueStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ContinueStmtClass;
-pub const ZigClangStmt_CoreturnStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CoreturnStmtClass;
-pub const ZigClangStmt_CoroutineBodyStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CoroutineBodyStmtClass;
-pub const ZigClangStmt_DeclStmtClass = enum_ZigClangStmtClass.ZigClangStmt_DeclStmtClass;
-pub const ZigClangStmt_DoStmtClass = enum_ZigClangStmtClass.ZigClangStmt_DoStmtClass;
-pub const ZigClangStmt_BinaryConditionalOperatorClass = enum_ZigClangStmtClass.ZigClangStmt_BinaryConditionalOperatorClass;
-pub const ZigClangStmt_ConditionalOperatorClass = enum_ZigClangStmtClass.ZigClangStmt_ConditionalOperatorClass;
-pub const ZigClangStmt_AddrLabelExprClass = enum_ZigClangStmtClass.ZigClangStmt_AddrLabelExprClass;
-pub const ZigClangStmt_ArrayInitIndexExprClass = enum_ZigClangStmtClass.ZigClangStmt_ArrayInitIndexExprClass;
-pub const ZigClangStmt_ArrayInitLoopExprClass = enum_ZigClangStmtClass.ZigClangStmt_ArrayInitLoopExprClass;
-pub const ZigClangStmt_ArraySubscriptExprClass = enum_ZigClangStmtClass.ZigClangStmt_ArraySubscriptExprClass;
-pub const ZigClangStmt_ArrayTypeTraitExprClass = enum_ZigClangStmtClass.ZigClangStmt_ArrayTypeTraitExprClass;
-pub const ZigClangStmt_AsTypeExprClass = enum_ZigClangStmtClass.ZigClangStmt_AsTypeExprClass;
-pub const ZigClangStmt_AtomicExprClass = enum_ZigClangStmtClass.ZigClangStmt_AtomicExprClass;
-pub const ZigClangStmt_BinaryOperatorClass = enum_ZigClangStmtClass.ZigClangStmt_BinaryOperatorClass;
-pub const ZigClangStmt_CompoundAssignOperatorClass = enum_ZigClangStmtClass.ZigClangStmt_CompoundAssignOperatorClass;
-pub const ZigClangStmt_BlockExprClass = enum_ZigClangStmtClass.ZigClangStmt_BlockExprClass;
-pub const ZigClangStmt_CXXBindTemporaryExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXBindTemporaryExprClass;
-pub const ZigClangStmt_CXXBoolLiteralExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXBoolLiteralExprClass;
-pub const ZigClangStmt_CXXConstructExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXConstructExprClass;
-pub const ZigClangStmt_CXXTemporaryObjectExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXTemporaryObjectExprClass;
-pub const ZigClangStmt_CXXDefaultArgExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXDefaultArgExprClass;
-pub const ZigClangStmt_CXXDefaultInitExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXDefaultInitExprClass;
-pub const ZigClangStmt_CXXDeleteExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXDeleteExprClass;
-pub const ZigClangStmt_CXXDependentScopeMemberExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXDependentScopeMemberExprClass;
-pub const ZigClangStmt_CXXFoldExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXFoldExprClass;
-pub const ZigClangStmt_CXXInheritedCtorInitExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXInheritedCtorInitExprClass;
-pub const ZigClangStmt_CXXNewExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXNewExprClass;
-pub const ZigClangStmt_CXXNoexceptExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXNoexceptExprClass;
-pub const ZigClangStmt_CXXNullPtrLiteralExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXNullPtrLiteralExprClass;
-pub const ZigClangStmt_CXXPseudoDestructorExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXPseudoDestructorExprClass;
-pub const ZigClangStmt_CXXScalarValueInitExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXScalarValueInitExprClass;
-pub const ZigClangStmt_CXXStdInitializerListExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXStdInitializerListExprClass;
-pub const ZigClangStmt_CXXThisExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXThisExprClass;
-pub const ZigClangStmt_CXXThrowExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXThrowExprClass;
-pub const ZigClangStmt_CXXTypeidExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXTypeidExprClass;
-pub const ZigClangStmt_CXXUnresolvedConstructExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXUnresolvedConstructExprClass;
-pub const ZigClangStmt_CXXUuidofExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXUuidofExprClass;
-pub const ZigClangStmt_CallExprClass = enum_ZigClangStmtClass.ZigClangStmt_CallExprClass;
-pub const ZigClangStmt_CUDAKernelCallExprClass = enum_ZigClangStmtClass.ZigClangStmt_CUDAKernelCallExprClass;
-pub const ZigClangStmt_CXXMemberCallExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXMemberCallExprClass;
-pub const ZigClangStmt_CXXOperatorCallExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXOperatorCallExprClass;
-pub const ZigClangStmt_UserDefinedLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_UserDefinedLiteralClass;
-pub const ZigClangStmt_CStyleCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_CStyleCastExprClass;
-pub const ZigClangStmt_CXXFunctionalCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXFunctionalCastExprClass;
-pub const ZigClangStmt_CXXConstCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXConstCastExprClass;
-pub const ZigClangStmt_CXXDynamicCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXDynamicCastExprClass;
-pub const ZigClangStmt_CXXReinterpretCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXReinterpretCastExprClass;
-pub const ZigClangStmt_CXXStaticCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_CXXStaticCastExprClass;
-pub const ZigClangStmt_ObjCBridgedCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCBridgedCastExprClass;
-pub const ZigClangStmt_ImplicitCastExprClass = enum_ZigClangStmtClass.ZigClangStmt_ImplicitCastExprClass;
-pub const ZigClangStmt_CharacterLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_CharacterLiteralClass;
-pub const ZigClangStmt_ChooseExprClass = enum_ZigClangStmtClass.ZigClangStmt_ChooseExprClass;
-pub const ZigClangStmt_CompoundLiteralExprClass = enum_ZigClangStmtClass.ZigClangStmt_CompoundLiteralExprClass;
-pub const ZigClangStmt_ConvertVectorExprClass = enum_ZigClangStmtClass.ZigClangStmt_ConvertVectorExprClass;
-pub const ZigClangStmt_CoawaitExprClass = enum_ZigClangStmtClass.ZigClangStmt_CoawaitExprClass;
-pub const ZigClangStmt_CoyieldExprClass = enum_ZigClangStmtClass.ZigClangStmt_CoyieldExprClass;
-pub const ZigClangStmt_DeclRefExprClass = enum_ZigClangStmtClass.ZigClangStmt_DeclRefExprClass;
-pub const ZigClangStmt_DependentCoawaitExprClass = enum_ZigClangStmtClass.ZigClangStmt_DependentCoawaitExprClass;
-pub const ZigClangStmt_DependentScopeDeclRefExprClass = enum_ZigClangStmtClass.ZigClangStmt_DependentScopeDeclRefExprClass;
-pub const ZigClangStmt_DesignatedInitExprClass = enum_ZigClangStmtClass.ZigClangStmt_DesignatedInitExprClass;
-pub const ZigClangStmt_DesignatedInitUpdateExprClass = enum_ZigClangStmtClass.ZigClangStmt_DesignatedInitUpdateExprClass;
-pub const ZigClangStmt_ExpressionTraitExprClass = enum_ZigClangStmtClass.ZigClangStmt_ExpressionTraitExprClass;
-pub const ZigClangStmt_ExtVectorElementExprClass = enum_ZigClangStmtClass.ZigClangStmt_ExtVectorElementExprClass;
-pub const ZigClangStmt_FixedPointLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_FixedPointLiteralClass;
-pub const ZigClangStmt_FloatingLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_FloatingLiteralClass;
-pub const ZigClangStmt_ConstantExprClass = enum_ZigClangStmtClass.ZigClangStmt_ConstantExprClass;
-pub const ZigClangStmt_ExprWithCleanupsClass = enum_ZigClangStmtClass.ZigClangStmt_ExprWithCleanupsClass;
-pub const ZigClangStmt_FunctionParmPackExprClass = enum_ZigClangStmtClass.ZigClangStmt_FunctionParmPackExprClass;
-pub const ZigClangStmt_GNUNullExprClass = enum_ZigClangStmtClass.ZigClangStmt_GNUNullExprClass;
-pub const ZigClangStmt_GenericSelectionExprClass = enum_ZigClangStmtClass.ZigClangStmt_GenericSelectionExprClass;
-pub const ZigClangStmt_ImaginaryLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_ImaginaryLiteralClass;
-pub const ZigClangStmt_ImplicitValueInitExprClass = enum_ZigClangStmtClass.ZigClangStmt_ImplicitValueInitExprClass;
-pub const ZigClangStmt_InitListExprClass = enum_ZigClangStmtClass.ZigClangStmt_InitListExprClass;
-pub const ZigClangStmt_IntegerLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_IntegerLiteralClass;
-pub const ZigClangStmt_LambdaExprClass = enum_ZigClangStmtClass.ZigClangStmt_LambdaExprClass;
-pub const ZigClangStmt_MSPropertyRefExprClass = enum_ZigClangStmtClass.ZigClangStmt_MSPropertyRefExprClass;
-pub const ZigClangStmt_MSPropertySubscriptExprClass = enum_ZigClangStmtClass.ZigClangStmt_MSPropertySubscriptExprClass;
-pub const ZigClangStmt_MaterializeTemporaryExprClass = enum_ZigClangStmtClass.ZigClangStmt_MaterializeTemporaryExprClass;
-pub const ZigClangStmt_MemberExprClass = enum_ZigClangStmtClass.ZigClangStmt_MemberExprClass;
-pub const ZigClangStmt_NoInitExprClass = enum_ZigClangStmtClass.ZigClangStmt_NoInitExprClass;
-pub const ZigClangStmt_OMPArraySectionExprClass = enum_ZigClangStmtClass.ZigClangStmt_OMPArraySectionExprClass;
-pub const ZigClangStmt_ObjCArrayLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCArrayLiteralClass;
-pub const ZigClangStmt_ObjCAvailabilityCheckExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCAvailabilityCheckExprClass;
-pub const ZigClangStmt_ObjCBoolLiteralExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCBoolLiteralExprClass;
-pub const ZigClangStmt_ObjCBoxedExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCBoxedExprClass;
-pub const ZigClangStmt_ObjCDictionaryLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCDictionaryLiteralClass;
-pub const ZigClangStmt_ObjCEncodeExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCEncodeExprClass;
-pub const ZigClangStmt_ObjCIndirectCopyRestoreExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCIndirectCopyRestoreExprClass;
-pub const ZigClangStmt_ObjCIsaExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCIsaExprClass;
-pub const ZigClangStmt_ObjCIvarRefExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCIvarRefExprClass;
-pub const ZigClangStmt_ObjCMessageExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCMessageExprClass;
-pub const ZigClangStmt_ObjCPropertyRefExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCPropertyRefExprClass;
-pub const ZigClangStmt_ObjCProtocolExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCProtocolExprClass;
-pub const ZigClangStmt_ObjCSelectorExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCSelectorExprClass;
-pub const ZigClangStmt_ObjCStringLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCStringLiteralClass;
-pub const ZigClangStmt_ObjCSubscriptRefExprClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCSubscriptRefExprClass;
-pub const ZigClangStmt_OffsetOfExprClass = enum_ZigClangStmtClass.ZigClangStmt_OffsetOfExprClass;
-pub const ZigClangStmt_OpaqueValueExprClass = enum_ZigClangStmtClass.ZigClangStmt_OpaqueValueExprClass;
-pub const ZigClangStmt_UnresolvedLookupExprClass = enum_ZigClangStmtClass.ZigClangStmt_UnresolvedLookupExprClass;
-pub const ZigClangStmt_UnresolvedMemberExprClass = enum_ZigClangStmtClass.ZigClangStmt_UnresolvedMemberExprClass;
-pub const ZigClangStmt_PackExpansionExprClass = enum_ZigClangStmtClass.ZigClangStmt_PackExpansionExprClass;
-pub const ZigClangStmt_ParenExprClass = enum_ZigClangStmtClass.ZigClangStmt_ParenExprClass;
-pub const ZigClangStmt_ParenListExprClass = enum_ZigClangStmtClass.ZigClangStmt_ParenListExprClass;
-pub const ZigClangStmt_PredefinedExprClass = enum_ZigClangStmtClass.ZigClangStmt_PredefinedExprClass;
-pub const ZigClangStmt_PseudoObjectExprClass = enum_ZigClangStmtClass.ZigClangStmt_PseudoObjectExprClass;
-pub const ZigClangStmt_ShuffleVectorExprClass = enum_ZigClangStmtClass.ZigClangStmt_ShuffleVectorExprClass;
-pub const ZigClangStmt_SizeOfPackExprClass = enum_ZigClangStmtClass.ZigClangStmt_SizeOfPackExprClass;
-pub const ZigClangStmt_StmtExprClass = enum_ZigClangStmtClass.ZigClangStmt_StmtExprClass;
-pub const ZigClangStmt_StringLiteralClass = enum_ZigClangStmtClass.ZigClangStmt_StringLiteralClass;
-pub const ZigClangStmt_SubstNonTypeTemplateParmExprClass = enum_ZigClangStmtClass.ZigClangStmt_SubstNonTypeTemplateParmExprClass;
-pub const ZigClangStmt_SubstNonTypeTemplateParmPackExprClass = enum_ZigClangStmtClass.ZigClangStmt_SubstNonTypeTemplateParmPackExprClass;
-pub const ZigClangStmt_TypeTraitExprClass = enum_ZigClangStmtClass.ZigClangStmt_TypeTraitExprClass;
-pub const ZigClangStmt_TypoExprClass = enum_ZigClangStmtClass.ZigClangStmt_TypoExprClass;
-pub const ZigClangStmt_UnaryExprOrTypeTraitExprClass = enum_ZigClangStmtClass.ZigClangStmt_UnaryExprOrTypeTraitExprClass;
-pub const ZigClangStmt_UnaryOperatorClass = enum_ZigClangStmtClass.ZigClangStmt_UnaryOperatorClass;
-pub const ZigClangStmt_VAArgExprClass = enum_ZigClangStmtClass.ZigClangStmt_VAArgExprClass;
-pub const ZigClangStmt_ForStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ForStmtClass;
-pub const ZigClangStmt_GotoStmtClass = enum_ZigClangStmtClass.ZigClangStmt_GotoStmtClass;
-pub const ZigClangStmt_IfStmtClass = enum_ZigClangStmtClass.ZigClangStmt_IfStmtClass;
-pub const ZigClangStmt_IndirectGotoStmtClass = enum_ZigClangStmtClass.ZigClangStmt_IndirectGotoStmtClass;
-pub const ZigClangStmt_LabelStmtClass = enum_ZigClangStmtClass.ZigClangStmt_LabelStmtClass;
-pub const ZigClangStmt_MSDependentExistsStmtClass = enum_ZigClangStmtClass.ZigClangStmt_MSDependentExistsStmtClass;
-pub const ZigClangStmt_NullStmtClass = enum_ZigClangStmtClass.ZigClangStmt_NullStmtClass;
-pub const ZigClangStmt_OMPAtomicDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPAtomicDirectiveClass;
-pub const ZigClangStmt_OMPBarrierDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPBarrierDirectiveClass;
-pub const ZigClangStmt_OMPCancelDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPCancelDirectiveClass;
-pub const ZigClangStmt_OMPCancellationPointDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPCancellationPointDirectiveClass;
-pub const ZigClangStmt_OMPCriticalDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPCriticalDirectiveClass;
-pub const ZigClangStmt_OMPFlushDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPFlushDirectiveClass;
-pub const ZigClangStmt_OMPDistributeDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPDistributeDirectiveClass;
-pub const ZigClangStmt_OMPDistributeParallelForDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPDistributeParallelForDirectiveClass;
-pub const ZigClangStmt_OMPDistributeParallelForSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPDistributeParallelForSimdDirectiveClass;
-pub const ZigClangStmt_OMPDistributeSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPDistributeSimdDirectiveClass;
-pub const ZigClangStmt_OMPForDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPForDirectiveClass;
-pub const ZigClangStmt_OMPForSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPForSimdDirectiveClass;
-pub const ZigClangStmt_OMPParallelForDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPParallelForDirectiveClass;
-pub const ZigClangStmt_OMPParallelForSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPParallelForSimdDirectiveClass;
-pub const ZigClangStmt_OMPSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPSimdDirectiveClass;
-pub const ZigClangStmt_OMPTargetParallelForSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetParallelForSimdDirectiveClass;
-pub const ZigClangStmt_OMPTargetSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetSimdDirectiveClass;
-pub const ZigClangStmt_OMPTargetTeamsDistributeDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetTeamsDistributeDirectiveClass;
-pub const ZigClangStmt_OMPTargetTeamsDistributeParallelForDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetTeamsDistributeParallelForDirectiveClass;
-pub const ZigClangStmt_OMPTargetTeamsDistributeParallelForSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetTeamsDistributeParallelForSimdDirectiveClass;
-pub const ZigClangStmt_OMPTargetTeamsDistributeSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetTeamsDistributeSimdDirectiveClass;
-pub const ZigClangStmt_OMPTaskLoopDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTaskLoopDirectiveClass;
-pub const ZigClangStmt_OMPTaskLoopSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTaskLoopSimdDirectiveClass;
-pub const ZigClangStmt_OMPTeamsDistributeDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTeamsDistributeDirectiveClass;
-pub const ZigClangStmt_OMPTeamsDistributeParallelForDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTeamsDistributeParallelForDirectiveClass;
-pub const ZigClangStmt_OMPTeamsDistributeParallelForSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTeamsDistributeParallelForSimdDirectiveClass;
-pub const ZigClangStmt_OMPTeamsDistributeSimdDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTeamsDistributeSimdDirectiveClass;
-pub const ZigClangStmt_OMPMasterDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPMasterDirectiveClass;
-pub const ZigClangStmt_OMPOrderedDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPOrderedDirectiveClass;
-pub const ZigClangStmt_OMPParallelDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPParallelDirectiveClass;
-pub const ZigClangStmt_OMPParallelSectionsDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPParallelSectionsDirectiveClass;
-pub const ZigClangStmt_OMPSectionDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPSectionDirectiveClass;
-pub const ZigClangStmt_OMPSectionsDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPSectionsDirectiveClass;
-pub const ZigClangStmt_OMPSingleDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPSingleDirectiveClass;
-pub const ZigClangStmt_OMPTargetDataDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetDataDirectiveClass;
-pub const ZigClangStmt_OMPTargetDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetDirectiveClass;
-pub const ZigClangStmt_OMPTargetEnterDataDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetEnterDataDirectiveClass;
-pub const ZigClangStmt_OMPTargetExitDataDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetExitDataDirectiveClass;
-pub const ZigClangStmt_OMPTargetParallelDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetParallelDirectiveClass;
-pub const ZigClangStmt_OMPTargetParallelForDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetParallelForDirectiveClass;
-pub const ZigClangStmt_OMPTargetTeamsDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetTeamsDirectiveClass;
-pub const ZigClangStmt_OMPTargetUpdateDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTargetUpdateDirectiveClass;
-pub const ZigClangStmt_OMPTaskDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTaskDirectiveClass;
-pub const ZigClangStmt_OMPTaskgroupDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTaskgroupDirectiveClass;
-pub const ZigClangStmt_OMPTaskwaitDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTaskwaitDirectiveClass;
-pub const ZigClangStmt_OMPTaskyieldDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTaskyieldDirectiveClass;
-pub const ZigClangStmt_OMPTeamsDirectiveClass = enum_ZigClangStmtClass.ZigClangStmt_OMPTeamsDirectiveClass;
-pub const ZigClangStmt_ObjCAtCatchStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCAtCatchStmtClass;
-pub const ZigClangStmt_ObjCAtFinallyStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCAtFinallyStmtClass;
-pub const ZigClangStmt_ObjCAtSynchronizedStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCAtSynchronizedStmtClass;
-pub const ZigClangStmt_ObjCAtThrowStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCAtThrowStmtClass;
-pub const ZigClangStmt_ObjCAtTryStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCAtTryStmtClass;
-pub const ZigClangStmt_ObjCAutoreleasePoolStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCAutoreleasePoolStmtClass;
-pub const ZigClangStmt_ObjCForCollectionStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ObjCForCollectionStmtClass;
-pub const ZigClangStmt_ReturnStmtClass = enum_ZigClangStmtClass.ZigClangStmt_ReturnStmtClass;
-pub const ZigClangStmt_SEHExceptStmtClass = enum_ZigClangStmtClass.ZigClangStmt_SEHExceptStmtClass;
-pub const ZigClangStmt_SEHFinallyStmtClass = enum_ZigClangStmtClass.ZigClangStmt_SEHFinallyStmtClass;
-pub const ZigClangStmt_SEHLeaveStmtClass = enum_ZigClangStmtClass.ZigClangStmt_SEHLeaveStmtClass;
-pub const ZigClangStmt_SEHTryStmtClass = enum_ZigClangStmtClass.ZigClangStmt_SEHTryStmtClass;
-pub const ZigClangStmt_CaseStmtClass = enum_ZigClangStmtClass.ZigClangStmt_CaseStmtClass;
-pub const ZigClangStmt_DefaultStmtClass = enum_ZigClangStmtClass.ZigClangStmt_DefaultStmtClass;
-pub const ZigClangStmt_SwitchStmtClass = enum_ZigClangStmtClass.ZigClangStmt_SwitchStmtClass;
-pub const ZigClangStmt_WhileStmtClass = enum_ZigClangStmtClass.ZigClangStmt_WhileStmtClass;
-pub const enum_ZigClangStmtClass = extern enum {
- ZigClangStmt_NoStmtClass = 0,
- ZigClangStmt_GCCAsmStmtClass = 1,
- ZigClangStmt_MSAsmStmtClass = 2,
- ZigClangStmt_AttributedStmtClass = 3,
- ZigClangStmt_BreakStmtClass = 4,
- ZigClangStmt_CXXCatchStmtClass = 5,
- ZigClangStmt_CXXForRangeStmtClass = 6,
- ZigClangStmt_CXXTryStmtClass = 7,
- ZigClangStmt_CapturedStmtClass = 8,
- ZigClangStmt_CompoundStmtClass = 9,
- ZigClangStmt_ContinueStmtClass = 10,
- ZigClangStmt_CoreturnStmtClass = 11,
- ZigClangStmt_CoroutineBodyStmtClass = 12,
- ZigClangStmt_DeclStmtClass = 13,
- ZigClangStmt_DoStmtClass = 14,
- ZigClangStmt_BinaryConditionalOperatorClass = 15,
- ZigClangStmt_ConditionalOperatorClass = 16,
- ZigClangStmt_AddrLabelExprClass = 17,
- ZigClangStmt_ArrayInitIndexExprClass = 18,
- ZigClangStmt_ArrayInitLoopExprClass = 19,
- ZigClangStmt_ArraySubscriptExprClass = 20,
- ZigClangStmt_ArrayTypeTraitExprClass = 21,
- ZigClangStmt_AsTypeExprClass = 22,
- ZigClangStmt_AtomicExprClass = 23,
- ZigClangStmt_BinaryOperatorClass = 24,
- ZigClangStmt_CompoundAssignOperatorClass = 25,
- ZigClangStmt_BlockExprClass = 26,
- ZigClangStmt_CXXBindTemporaryExprClass = 27,
- ZigClangStmt_CXXBoolLiteralExprClass = 28,
- ZigClangStmt_CXXConstructExprClass = 29,
- ZigClangStmt_CXXTemporaryObjectExprClass = 30,
- ZigClangStmt_CXXDefaultArgExprClass = 31,
- ZigClangStmt_CXXDefaultInitExprClass = 32,
- ZigClangStmt_CXXDeleteExprClass = 33,
- ZigClangStmt_CXXDependentScopeMemberExprClass = 34,
- ZigClangStmt_CXXFoldExprClass = 35,
- ZigClangStmt_CXXInheritedCtorInitExprClass = 36,
- ZigClangStmt_CXXNewExprClass = 37,
- ZigClangStmt_CXXNoexceptExprClass = 38,
- ZigClangStmt_CXXNullPtrLiteralExprClass = 39,
- ZigClangStmt_CXXPseudoDestructorExprClass = 40,
- ZigClangStmt_CXXScalarValueInitExprClass = 41,
- ZigClangStmt_CXXStdInitializerListExprClass = 42,
- ZigClangStmt_CXXThisExprClass = 43,
- ZigClangStmt_CXXThrowExprClass = 44,
- ZigClangStmt_CXXTypeidExprClass = 45,
- ZigClangStmt_CXXUnresolvedConstructExprClass = 46,
- ZigClangStmt_CXXUuidofExprClass = 47,
- ZigClangStmt_CallExprClass = 48,
- ZigClangStmt_CUDAKernelCallExprClass = 49,
- ZigClangStmt_CXXMemberCallExprClass = 50,
- ZigClangStmt_CXXOperatorCallExprClass = 51,
- ZigClangStmt_UserDefinedLiteralClass = 52,
- ZigClangStmt_CStyleCastExprClass = 53,
- ZigClangStmt_CXXFunctionalCastExprClass = 54,
- ZigClangStmt_CXXConstCastExprClass = 55,
- ZigClangStmt_CXXDynamicCastExprClass = 56,
- ZigClangStmt_CXXReinterpretCastExprClass = 57,
- ZigClangStmt_CXXStaticCastExprClass = 58,
- ZigClangStmt_ObjCBridgedCastExprClass = 59,
- ZigClangStmt_ImplicitCastExprClass = 60,
- ZigClangStmt_CharacterLiteralClass = 61,
- ZigClangStmt_ChooseExprClass = 62,
- ZigClangStmt_CompoundLiteralExprClass = 63,
- ZigClangStmt_ConvertVectorExprClass = 64,
- ZigClangStmt_CoawaitExprClass = 65,
- ZigClangStmt_CoyieldExprClass = 66,
- ZigClangStmt_DeclRefExprClass = 67,
- ZigClangStmt_DependentCoawaitExprClass = 68,
- ZigClangStmt_DependentScopeDeclRefExprClass = 69,
- ZigClangStmt_DesignatedInitExprClass = 70,
- ZigClangStmt_DesignatedInitUpdateExprClass = 71,
- ZigClangStmt_ExpressionTraitExprClass = 72,
- ZigClangStmt_ExtVectorElementExprClass = 73,
- ZigClangStmt_FixedPointLiteralClass = 74,
- ZigClangStmt_FloatingLiteralClass = 75,
- ZigClangStmt_ConstantExprClass = 76,
- ZigClangStmt_ExprWithCleanupsClass = 77,
- ZigClangStmt_FunctionParmPackExprClass = 78,
- ZigClangStmt_GNUNullExprClass = 79,
- ZigClangStmt_GenericSelectionExprClass = 80,
- ZigClangStmt_ImaginaryLiteralClass = 81,
- ZigClangStmt_ImplicitValueInitExprClass = 82,
- ZigClangStmt_InitListExprClass = 83,
- ZigClangStmt_IntegerLiteralClass = 84,
- ZigClangStmt_LambdaExprClass = 85,
- ZigClangStmt_MSPropertyRefExprClass = 86,
- ZigClangStmt_MSPropertySubscriptExprClass = 87,
- ZigClangStmt_MaterializeTemporaryExprClass = 88,
- ZigClangStmt_MemberExprClass = 89,
- ZigClangStmt_NoInitExprClass = 90,
- ZigClangStmt_OMPArraySectionExprClass = 91,
- ZigClangStmt_ObjCArrayLiteralClass = 92,
- ZigClangStmt_ObjCAvailabilityCheckExprClass = 93,
- ZigClangStmt_ObjCBoolLiteralExprClass = 94,
- ZigClangStmt_ObjCBoxedExprClass = 95,
- ZigClangStmt_ObjCDictionaryLiteralClass = 96,
- ZigClangStmt_ObjCEncodeExprClass = 97,
- ZigClangStmt_ObjCIndirectCopyRestoreExprClass = 98,
- ZigClangStmt_ObjCIsaExprClass = 99,
- ZigClangStmt_ObjCIvarRefExprClass = 100,
- ZigClangStmt_ObjCMessageExprClass = 101,
- ZigClangStmt_ObjCPropertyRefExprClass = 102,
- ZigClangStmt_ObjCProtocolExprClass = 103,
- ZigClangStmt_ObjCSelectorExprClass = 104,
- ZigClangStmt_ObjCStringLiteralClass = 105,
- ZigClangStmt_ObjCSubscriptRefExprClass = 106,
- ZigClangStmt_OffsetOfExprClass = 107,
- ZigClangStmt_OpaqueValueExprClass = 108,
- ZigClangStmt_UnresolvedLookupExprClass = 109,
- ZigClangStmt_UnresolvedMemberExprClass = 110,
- ZigClangStmt_PackExpansionExprClass = 111,
- ZigClangStmt_ParenExprClass = 112,
- ZigClangStmt_ParenListExprClass = 113,
- ZigClangStmt_PredefinedExprClass = 114,
- ZigClangStmt_PseudoObjectExprClass = 115,
- ZigClangStmt_ShuffleVectorExprClass = 116,
- ZigClangStmt_SizeOfPackExprClass = 117,
- ZigClangStmt_StmtExprClass = 118,
- ZigClangStmt_StringLiteralClass = 119,
- ZigClangStmt_SubstNonTypeTemplateParmExprClass = 120,
- ZigClangStmt_SubstNonTypeTemplateParmPackExprClass = 121,
- ZigClangStmt_TypeTraitExprClass = 122,
- ZigClangStmt_TypoExprClass = 123,
- ZigClangStmt_UnaryExprOrTypeTraitExprClass = 124,
- ZigClangStmt_UnaryOperatorClass = 125,
- ZigClangStmt_VAArgExprClass = 126,
- ZigClangStmt_ForStmtClass = 127,
- ZigClangStmt_GotoStmtClass = 128,
- ZigClangStmt_IfStmtClass = 129,
- ZigClangStmt_IndirectGotoStmtClass = 130,
- ZigClangStmt_LabelStmtClass = 131,
- ZigClangStmt_MSDependentExistsStmtClass = 132,
- ZigClangStmt_NullStmtClass = 133,
- ZigClangStmt_OMPAtomicDirectiveClass = 134,
- ZigClangStmt_OMPBarrierDirectiveClass = 135,
- ZigClangStmt_OMPCancelDirectiveClass = 136,
- ZigClangStmt_OMPCancellationPointDirectiveClass = 137,
- ZigClangStmt_OMPCriticalDirectiveClass = 138,
- ZigClangStmt_OMPFlushDirectiveClass = 139,
- ZigClangStmt_OMPDistributeDirectiveClass = 140,
- ZigClangStmt_OMPDistributeParallelForDirectiveClass = 141,
- ZigClangStmt_OMPDistributeParallelForSimdDirectiveClass = 142,
- ZigClangStmt_OMPDistributeSimdDirectiveClass = 143,
- ZigClangStmt_OMPForDirectiveClass = 144,
- ZigClangStmt_OMPForSimdDirectiveClass = 145,
- ZigClangStmt_OMPParallelForDirectiveClass = 146,
- ZigClangStmt_OMPParallelForSimdDirectiveClass = 147,
- ZigClangStmt_OMPSimdDirectiveClass = 148,
- ZigClangStmt_OMPTargetParallelForSimdDirectiveClass = 149,
- ZigClangStmt_OMPTargetSimdDirectiveClass = 150,
- ZigClangStmt_OMPTargetTeamsDistributeDirectiveClass = 151,
- ZigClangStmt_OMPTargetTeamsDistributeParallelForDirectiveClass = 152,
- ZigClangStmt_OMPTargetTeamsDistributeParallelForSimdDirectiveClass = 153,
- ZigClangStmt_OMPTargetTeamsDistributeSimdDirectiveClass = 154,
- ZigClangStmt_OMPTaskLoopDirectiveClass = 155,
- ZigClangStmt_OMPTaskLoopSimdDirectiveClass = 156,
- ZigClangStmt_OMPTeamsDistributeDirectiveClass = 157,
- ZigClangStmt_OMPTeamsDistributeParallelForDirectiveClass = 158,
- ZigClangStmt_OMPTeamsDistributeParallelForSimdDirectiveClass = 159,
- ZigClangStmt_OMPTeamsDistributeSimdDirectiveClass = 160,
- ZigClangStmt_OMPMasterDirectiveClass = 161,
- ZigClangStmt_OMPOrderedDirectiveClass = 162,
- ZigClangStmt_OMPParallelDirectiveClass = 163,
- ZigClangStmt_OMPParallelSectionsDirectiveClass = 164,
- ZigClangStmt_OMPSectionDirectiveClass = 165,
- ZigClangStmt_OMPSectionsDirectiveClass = 166,
- ZigClangStmt_OMPSingleDirectiveClass = 167,
- ZigClangStmt_OMPTargetDataDirectiveClass = 168,
- ZigClangStmt_OMPTargetDirectiveClass = 169,
- ZigClangStmt_OMPTargetEnterDataDirectiveClass = 170,
- ZigClangStmt_OMPTargetExitDataDirectiveClass = 171,
- ZigClangStmt_OMPTargetParallelDirectiveClass = 172,
- ZigClangStmt_OMPTargetParallelForDirectiveClass = 173,
- ZigClangStmt_OMPTargetTeamsDirectiveClass = 174,
- ZigClangStmt_OMPTargetUpdateDirectiveClass = 175,
- ZigClangStmt_OMPTaskDirectiveClass = 176,
- ZigClangStmt_OMPTaskgroupDirectiveClass = 177,
- ZigClangStmt_OMPTaskwaitDirectiveClass = 178,
- ZigClangStmt_OMPTaskyieldDirectiveClass = 179,
- ZigClangStmt_OMPTeamsDirectiveClass = 180,
- ZigClangStmt_ObjCAtCatchStmtClass = 181,
- ZigClangStmt_ObjCAtFinallyStmtClass = 182,
- ZigClangStmt_ObjCAtSynchronizedStmtClass = 183,
- ZigClangStmt_ObjCAtThrowStmtClass = 184,
- ZigClangStmt_ObjCAtTryStmtClass = 185,
- ZigClangStmt_ObjCAutoreleasePoolStmtClass = 186,
- ZigClangStmt_ObjCForCollectionStmtClass = 187,
- ZigClangStmt_ReturnStmtClass = 188,
- ZigClangStmt_SEHExceptStmtClass = 189,
- ZigClangStmt_SEHFinallyStmtClass = 190,
- ZigClangStmt_SEHLeaveStmtClass = 191,
- ZigClangStmt_SEHTryStmtClass = 192,
- ZigClangStmt_CaseStmtClass = 193,
- ZigClangStmt_DefaultStmtClass = 194,
- ZigClangStmt_SwitchStmtClass = 195,
- ZigClangStmt_WhileStmtClass = 196,
+
+pub const ZigClangStmtClass = extern enum {
+ NoStmtClass = 0,
+ GCCAsmStmtClass = 1,
+ MSAsmStmtClass = 2,
+ AttributedStmtClass = 3,
+ BreakStmtClass = 4,
+ CXXCatchStmtClass = 5,
+ CXXForRangeStmtClass = 6,
+ CXXTryStmtClass = 7,
+ CapturedStmtClass = 8,
+ CompoundStmtClass = 9,
+ ContinueStmtClass = 10,
+ CoreturnStmtClass = 11,
+ CoroutineBodyStmtClass = 12,
+ DeclStmtClass = 13,
+ DoStmtClass = 14,
+ BinaryConditionalOperatorClass = 15,
+ ConditionalOperatorClass = 16,
+ AddrLabelExprClass = 17,
+ ArrayInitIndexExprClass = 18,
+ ArrayInitLoopExprClass = 19,
+ ArraySubscriptExprClass = 20,
+ ArrayTypeTraitExprClass = 21,
+ AsTypeExprClass = 22,
+ AtomicExprClass = 23,
+ BinaryOperatorClass = 24,
+ CompoundAssignOperatorClass = 25,
+ BlockExprClass = 26,
+ CXXBindTemporaryExprClass = 27,
+ CXXBoolLiteralExprClass = 28,
+ CXXConstructExprClass = 29,
+ CXXTemporaryObjectExprClass = 30,
+ CXXDefaultArgExprClass = 31,
+ CXXDefaultInitExprClass = 32,
+ CXXDeleteExprClass = 33,
+ CXXDependentScopeMemberExprClass = 34,
+ CXXFoldExprClass = 35,
+ CXXInheritedCtorInitExprClass = 36,
+ CXXNewExprClass = 37,
+ CXXNoexceptExprClass = 38,
+ CXXNullPtrLiteralExprClass = 39,
+ CXXPseudoDestructorExprClass = 40,
+ CXXScalarValueInitExprClass = 41,
+ CXXStdInitializerListExprClass = 42,
+ CXXThisExprClass = 43,
+ CXXThrowExprClass = 44,
+ CXXTypeidExprClass = 45,
+ CXXUnresolvedConstructExprClass = 46,
+ CXXUuidofExprClass = 47,
+ CallExprClass = 48,
+ CUDAKernelCallExprClass = 49,
+ CXXMemberCallExprClass = 50,
+ CXXOperatorCallExprClass = 51,
+ UserDefinedLiteralClass = 52,
+ CStyleCastExprClass = 53,
+ CXXFunctionalCastExprClass = 54,
+ CXXConstCastExprClass = 55,
+ CXXDynamicCastExprClass = 56,
+ CXXReinterpretCastExprClass = 57,
+ CXXStaticCastExprClass = 58,
+ ObjCBridgedCastExprClass = 59,
+ ImplicitCastExprClass = 60,
+ CharacterLiteralClass = 61,
+ ChooseExprClass = 62,
+ CompoundLiteralExprClass = 63,
+ ConvertVectorExprClass = 64,
+ CoawaitExprClass = 65,
+ CoyieldExprClass = 66,
+ DeclRefExprClass = 67,
+ DependentCoawaitExprClass = 68,
+ DependentScopeDeclRefExprClass = 69,
+ DesignatedInitExprClass = 70,
+ DesignatedInitUpdateExprClass = 71,
+ ExpressionTraitExprClass = 72,
+ ExtVectorElementExprClass = 73,
+ FixedPointLiteralClass = 74,
+ FloatingLiteralClass = 75,
+ ConstantExprClass = 76,
+ ExprWithCleanupsClass = 77,
+ FunctionParmPackExprClass = 78,
+ GNUNullExprClass = 79,
+ GenericSelectionExprClass = 80,
+ ImaginaryLiteralClass = 81,
+ ImplicitValueInitExprClass = 82,
+ InitListExprClass = 83,
+ IntegerLiteralClass = 84,
+ LambdaExprClass = 85,
+ MSPropertyRefExprClass = 86,
+ MSPropertySubscriptExprClass = 87,
+ MaterializeTemporaryExprClass = 88,
+ MemberExprClass = 89,
+ NoInitExprClass = 90,
+ OMPArraySectionExprClass = 91,
+ ObjCArrayLiteralClass = 92,
+ ObjCAvailabilityCheckExprClass = 93,
+ ObjCBoolLiteralExprClass = 94,
+ ObjCBoxedExprClass = 95,
+ ObjCDictionaryLiteralClass = 96,
+ ObjCEncodeExprClass = 97,
+ ObjCIndirectCopyRestoreExprClass = 98,
+ ObjCIsaExprClass = 99,
+ ObjCIvarRefExprClass = 100,
+ ObjCMessageExprClass = 101,
+ ObjCPropertyRefExprClass = 102,
+ ObjCProtocolExprClass = 103,
+ ObjCSelectorExprClass = 104,
+ ObjCStringLiteralClass = 105,
+ ObjCSubscriptRefExprClass = 106,
+ OffsetOfExprClass = 107,
+ OpaqueValueExprClass = 108,
+ UnresolvedLookupExprClass = 109,
+ UnresolvedMemberExprClass = 110,
+ PackExpansionExprClass = 111,
+ ParenExprClass = 112,
+ ParenListExprClass = 113,
+ PredefinedExprClass = 114,
+ PseudoObjectExprClass = 115,
+ ShuffleVectorExprClass = 116,
+ SizeOfPackExprClass = 117,
+ StmtExprClass = 118,
+ StringLiteralClass = 119,
+ SubstNonTypeTemplateParmExprClass = 120,
+ SubstNonTypeTemplateParmPackExprClass = 121,
+ TypeTraitExprClass = 122,
+ TypoExprClass = 123,
+ UnaryExprOrTypeTraitExprClass = 124,
+ UnaryOperatorClass = 125,
+ VAArgExprClass = 126,
+ ForStmtClass = 127,
+ GotoStmtClass = 128,
+ IfStmtClass = 129,
+ IndirectGotoStmtClass = 130,
+ LabelStmtClass = 131,
+ MSDependentExistsStmtClass = 132,
+ NullStmtClass = 133,
+ OMPAtomicDirectiveClass = 134,
+ OMPBarrierDirectiveClass = 135,
+ OMPCancelDirectiveClass = 136,
+ OMPCancellationPointDirectiveClass = 137,
+ OMPCriticalDirectiveClass = 138,
+ OMPFlushDirectiveClass = 139,
+ OMPDistributeDirectiveClass = 140,
+ OMPDistributeParallelForDirectiveClass = 141,
+ OMPDistributeParallelForSimdDirectiveClass = 142,
+ OMPDistributeSimdDirectiveClass = 143,
+ OMPForDirectiveClass = 144,
+ OMPForSimdDirectiveClass = 145,
+ OMPParallelForDirectiveClass = 146,
+ OMPParallelForSimdDirectiveClass = 147,
+ OMPSimdDirectiveClass = 148,
+ OMPTargetParallelForSimdDirectiveClass = 149,
+ OMPTargetSimdDirectiveClass = 150,
+ OMPTargetTeamsDistributeDirectiveClass = 151,
+ OMPTargetTeamsDistributeParallelForDirectiveClass = 152,
+ OMPTargetTeamsDistributeParallelForSimdDirectiveClass = 153,
+ OMPTargetTeamsDistributeSimdDirectiveClass = 154,
+ OMPTaskLoopDirectiveClass = 155,
+ OMPTaskLoopSimdDirectiveClass = 156,
+ OMPTeamsDistributeDirectiveClass = 157,
+ OMPTeamsDistributeParallelForDirectiveClass = 158,
+ OMPTeamsDistributeParallelForSimdDirectiveClass = 159,
+ OMPTeamsDistributeSimdDirectiveClass = 160,
+ OMPMasterDirectiveClass = 161,
+ OMPOrderedDirectiveClass = 162,
+ OMPParallelDirectiveClass = 163,
+ OMPParallelSectionsDirectiveClass = 164,
+ OMPSectionDirectiveClass = 165,
+ OMPSectionsDirectiveClass = 166,
+ OMPSingleDirectiveClass = 167,
+ OMPTargetDataDirectiveClass = 168,
+ OMPTargetDirectiveClass = 169,
+ OMPTargetEnterDataDirectiveClass = 170,
+ OMPTargetExitDataDirectiveClass = 171,
+ OMPTargetParallelDirectiveClass = 172,
+ OMPTargetParallelForDirectiveClass = 173,
+ OMPTargetTeamsDirectiveClass = 174,
+ OMPTargetUpdateDirectiveClass = 175,
+ OMPTaskDirectiveClass = 176,
+ OMPTaskgroupDirectiveClass = 177,
+ OMPTaskwaitDirectiveClass = 178,
+ OMPTaskyieldDirectiveClass = 179,
+ OMPTeamsDirectiveClass = 180,
+ ObjCAtCatchStmtClass = 181,
+ ObjCAtFinallyStmtClass = 182,
+ ObjCAtSynchronizedStmtClass = 183,
+ ObjCAtThrowStmtClass = 184,
+ ObjCAtTryStmtClass = 185,
+ ObjCAutoreleasePoolStmtClass = 186,
+ ObjCForCollectionStmtClass = 187,
+ ReturnStmtClass = 188,
+ SEHExceptStmtClass = 189,
+ SEHFinallyStmtClass = 190,
+ SEHLeaveStmtClass = 191,
+ SEHTryStmtClass = 192,
+ CaseStmtClass = 193,
+ DefaultStmtClass = 194,
+ SwitchStmtClass = 195,
+ WhileStmtClass = 196,
};
-pub const ZigClangCK_Dependent = enum_ZigClangCK._Dependent;
-pub const ZigClangCK_BitCast = enum_ZigClangCK._BitCast;
-pub const ZigClangCK_LValueBitCast = enum_ZigClangCK._LValueBitCast;
-pub const ZigClangCK_LValueToRValue = enum_ZigClangCK._LValueToRValue;
-pub const ZigClangCK_NoOp = enum_ZigClangCK._NoOp;
-pub const ZigClangCK_BaseToDerived = enum_ZigClangCK._BaseToDerived;
-pub const ZigClangCK_DerivedToBase = enum_ZigClangCK._DerivedToBase;
-pub const ZigClangCK_UncheckedDerivedToBase = enum_ZigClangCK._UncheckedDerivedToBase;
-pub const ZigClangCK_Dynamic = enum_ZigClangCK._Dynamic;
-pub const ZigClangCK_ToUnion = enum_ZigClangCK._ToUnion;
-pub const ZigClangCK_ArrayToPointerDecay = enum_ZigClangCK._ArrayToPointerDecay;
-pub const ZigClangCK_FunctionToPointerDecay = enum_ZigClangCK._FunctionToPointerDecay;
-pub const ZigClangCK_NullToPointer = enum_ZigClangCK._NullToPointer;
-pub const ZigClangCK_NullToMemberPointer = enum_ZigClangCK._NullToMemberPointer;
-pub const ZigClangCK_BaseToDerivedMemberPointer = enum_ZigClangCK._BaseToDerivedMemberPointer;
-pub const ZigClangCK_DerivedToBaseMemberPointer = enum_ZigClangCK._DerivedToBaseMemberPointer;
-pub const ZigClangCK_MemberPointerToBoolean = enum_ZigClangCK._MemberPointerToBoolean;
-pub const ZigClangCK_ReinterpretMemberPointer = enum_ZigClangCK._ReinterpretMemberPointer;
-pub const ZigClangCK_UserDefinedConversion = enum_ZigClangCK._UserDefinedConversion;
-pub const ZigClangCK_ConstructorConversion = enum_ZigClangCK._ConstructorConversion;
-pub const ZigClangCK_IntegralToPointer = enum_ZigClangCK._IntegralToPointer;
-pub const ZigClangCK_PointerToIntegral = enum_ZigClangCK._PointerToIntegral;
-pub const ZigClangCK_PointerToBoolean = enum_ZigClangCK._PointerToBoolean;
-pub const ZigClangCK_ToVoid = enum_ZigClangCK._ToVoid;
-pub const ZigClangCK_VectorSplat = enum_ZigClangCK._VectorSplat;
-pub const ZigClangCK_IntegralCast = enum_ZigClangCK._IntegralCast;
-pub const ZigClangCK_IntegralToBoolean = enum_ZigClangCK._IntegralToBoolean;
-pub const ZigClangCK_IntegralToFloating = enum_ZigClangCK._IntegralToFloating;
-pub const ZigClangCK_FixedPointCast = enum_ZigClangCK._FixedPointCast;
-pub const ZigClangCK_FixedPointToBoolean = enum_ZigClangCK._FixedPointToBoolean;
-pub const ZigClangCK_FloatingToIntegral = enum_ZigClangCK._FloatingToIntegral;
-pub const ZigClangCK_FloatingToBoolean = enum_ZigClangCK._FloatingToBoolean;
-pub const ZigClangCK_BooleanToSignedIntegral = enum_ZigClangCK._BooleanToSignedIntegral;
-pub const ZigClangCK_FloatingCast = enum_ZigClangCK._FloatingCast;
-pub const ZigClangCK_CPointerToObjCPointerCast = enum_ZigClangCK._CPointerToObjCPointerCast;
-pub const ZigClangCK_BlockPointerToObjCPointerCast = enum_ZigClangCK._BlockPointerToObjCPointerCast;
-pub const ZigClangCK_AnyPointerToBlockPointerCast = enum_ZigClangCK._AnyPointerToBlockPointerCast;
-pub const ZigClangCK_ObjCObjectLValueCast = enum_ZigClangCK._ObjCObjectLValueCast;
-pub const ZigClangCK_FloatingRealToComplex = enum_ZigClangCK._FloatingRealToComplex;
-pub const ZigClangCK_FloatingComplexToReal = enum_ZigClangCK._FloatingComplexToReal;
-pub const ZigClangCK_FloatingComplexToBoolean = enum_ZigClangCK._FloatingComplexToBoolean;
-pub const ZigClangCK_FloatingComplexCast = enum_ZigClangCK._FloatingComplexCast;
-pub const ZigClangCK_FloatingComplexToIntegralComplex = enum_ZigClangCK._FloatingComplexToIntegralComplex;
-pub const ZigClangCK_IntegralRealToComplex = enum_ZigClangCK._IntegralRealToComplex;
-pub const ZigClangCK_IntegralComplexToReal = enum_ZigClangCK._IntegralComplexToReal;
-pub const ZigClangCK_IntegralComplexToBoolean = enum_ZigClangCK._IntegralComplexToBoolean;
-pub const ZigClangCK_IntegralComplexCast = enum_ZigClangCK._IntegralComplexCast;
-pub const ZigClangCK_IntegralComplexToFloatingComplex = enum_ZigClangCK._IntegralComplexToFloatingComplex;
-pub const ZigClangCK_ARCProduceObject = enum_ZigClangCK._ARCProduceObject;
-pub const ZigClangCK_ARCConsumeObject = enum_ZigClangCK._ARCConsumeObject;
-pub const ZigClangCK_ARCReclaimReturnedObject = enum_ZigClangCK._ARCReclaimReturnedObject;
-pub const ZigClangCK_ARCExtendBlockObject = enum_ZigClangCK._ARCExtendBlockObject;
-pub const ZigClangCK_AtomicToNonAtomic = enum_ZigClangCK._AtomicToNonAtomic;
-pub const ZigClangCK_NonAtomicToAtomic = enum_ZigClangCK._NonAtomicToAtomic;
-pub const ZigClangCK_CopyAndAutoreleaseBlockObject = enum_ZigClangCK._CopyAndAutoreleaseBlockObject;
-pub const ZigClangCK_BuiltinFnToFnPtr = enum_ZigClangCK._BuiltinFnToFnPtr;
-pub const ZigClangCK_ZeroToOCLOpaqueType = enum_ZigClangCK._ZeroToOCLOpaqueType;
-pub const ZigClangCK_AddressSpaceConversion = enum_ZigClangCK._AddressSpaceConversion;
-pub const ZigClangCK_IntToOCLSampler = enum_ZigClangCK._IntToOCLSampler;
-pub const enum_ZigClangCK = extern enum {
- _Dependent,
- _BitCast,
- _LValueBitCast,
- _LValueToRValue,
- _NoOp,
- _BaseToDerived,
- _DerivedToBase,
- _UncheckedDerivedToBase,
- _Dynamic,
- _ToUnion,
- _ArrayToPointerDecay,
- _FunctionToPointerDecay,
- _NullToPointer,
- _NullToMemberPointer,
- _BaseToDerivedMemberPointer,
- _DerivedToBaseMemberPointer,
- _MemberPointerToBoolean,
- _ReinterpretMemberPointer,
- _UserDefinedConversion,
- _ConstructorConversion,
- _IntegralToPointer,
- _PointerToIntegral,
- _PointerToBoolean,
- _ToVoid,
- _VectorSplat,
- _IntegralCast,
- _IntegralToBoolean,
- _IntegralToFloating,
- _FixedPointCast,
- _FixedPointToBoolean,
- _FloatingToIntegral,
- _FloatingToBoolean,
- _BooleanToSignedIntegral,
- _FloatingCast,
- _CPointerToObjCPointerCast,
- _BlockPointerToObjCPointerCast,
- _AnyPointerToBlockPointerCast,
- _ObjCObjectLValueCast,
- _FloatingRealToComplex,
- _FloatingComplexToReal,
- _FloatingComplexToBoolean,
- _FloatingComplexCast,
- _FloatingComplexToIntegralComplex,
- _IntegralRealToComplex,
- _IntegralComplexToReal,
- _IntegralComplexToBoolean,
- _IntegralComplexCast,
- _IntegralComplexToFloatingComplex,
- _ARCProduceObject,
- _ARCConsumeObject,
- _ARCReclaimReturnedObject,
- _ARCExtendBlockObject,
- _AtomicToNonAtomic,
- _NonAtomicToAtomic,
- _CopyAndAutoreleaseBlockObject,
- _BuiltinFnToFnPtr,
- _ZeroToOCLOpaqueType,
- _AddressSpaceConversion,
- _IntToOCLSampler,
+
+pub const ZigClangCK = extern enum {
+ Dependent,
+ BitCast,
+ LValueBitCast,
+ LValueToRValue,
+ NoOp,
+ BaseToDerived,
+ DerivedToBase,
+ UncheckedDerivedToBase,
+ Dynamic,
+ ToUnion,
+ ArrayToPointerDecay,
+ FunctionToPointerDecay,
+ NullToPointer,
+ NullToMemberPointer,
+ BaseToDerivedMemberPointer,
+ DerivedToBaseMemberPointer,
+ MemberPointerToBoolean,
+ ReinterpretMemberPointer,
+ UserDefinedConversion,
+ ConstructorConversion,
+ IntegralToPointer,
+ PointerToIntegral,
+ PointerToBoolean,
+ ToVoid,
+ VectorSplat,
+ IntegralCast,
+ IntegralToBoolean,
+ IntegralToFloating,
+ FixedPointCast,
+ FixedPointToBoolean,
+ FloatingToIntegral,
+ FloatingToBoolean,
+ BooleanToSignedIntegral,
+ FloatingCast,
+ CPointerToObjCPointerCast,
+ BlockPointerToObjCPointerCast,
+ AnyPointerToBlockPointerCast,
+ ObjCObjectLValueCast,
+ FloatingRealToComplex,
+ FloatingComplexToReal,
+ FloatingComplexToBoolean,
+ FloatingComplexCast,
+ FloatingComplexToIntegralComplex,
+ IntegralRealToComplex,
+ IntegralComplexToReal,
+ IntegralComplexToBoolean,
+ IntegralComplexCast,
+ IntegralComplexToFloatingComplex,
+ ARCProduceObject,
+ ARCConsumeObject,
+ ARCReclaimReturnedObject,
+ ARCExtendBlockObject,
+ AtomicToNonAtomic,
+ NonAtomicToAtomic,
+ CopyAndAutoreleaseBlockObject,
+ BuiltinFnToFnPtr,
+ ZeroToOCLOpaqueType,
+ AddressSpaceConversion,
+ IntToOCLSampler,
};
-pub const ZigClangAPValueUninitialized = enum_ZigClangAPValueKind.ZigClangAPValueUninitialized;
-pub const ZigClangAPValueInt = enum_ZigClangAPValueKind.ZigClangAPValueInt;
-pub const ZigClangAPValueFloat = enum_ZigClangAPValueKind.ZigClangAPValueFloat;
-pub const ZigClangAPValueComplexInt = enum_ZigClangAPValueKind.ZigClangAPValueComplexInt;
-pub const ZigClangAPValueComplexFloat = enum_ZigClangAPValueKind.ZigClangAPValueComplexFloat;
-pub const ZigClangAPValueLValue = enum_ZigClangAPValueKind.ZigClangAPValueLValue;
-pub const ZigClangAPValueVector = enum_ZigClangAPValueKind.ZigClangAPValueVector;
-pub const ZigClangAPValueArray = enum_ZigClangAPValueKind.ZigClangAPValueArray;
-pub const ZigClangAPValueStruct = enum_ZigClangAPValueKind.ZigClangAPValueStruct;
-pub const ZigClangAPValueUnion = enum_ZigClangAPValueKind.ZigClangAPValueUnion;
-pub const ZigClangAPValueMemberPointer = enum_ZigClangAPValueKind.ZigClangAPValueMemberPointer;
-pub const ZigClangAPValueAddrLabelDiff = enum_ZigClangAPValueKind.ZigClangAPValueAddrLabelDiff;
-pub const enum_ZigClangAPValueKind = extern enum {
- ZigClangAPValueUninitialized,
- ZigClangAPValueInt,
- ZigClangAPValueFloat,
- ZigClangAPValueComplexInt,
- ZigClangAPValueComplexFloat,
- ZigClangAPValueLValue,
- ZigClangAPValueVector,
- ZigClangAPValueArray,
- ZigClangAPValueStruct,
- ZigClangAPValueUnion,
- ZigClangAPValueMemberPointer,
- ZigClangAPValueAddrLabelDiff,
+
+pub const ZigClangAPValueKind = extern enum {
+ Uninitialized,
+ Int,
+ Float,
+ ComplexInt,
+ ComplexFloat,
+ LValue,
+ Vector,
+ Array,
+ Struct,
+ Union,
+ MemberPointer,
+ AddrLabelDiff,
};
+
pub extern fn ZigClangSourceManager_getSpellingLoc(arg0: ?*const struct_ZigClangSourceManager, Loc: struct_ZigClangSourceLocation) struct_ZigClangSourceLocation;
pub extern fn ZigClangSourceManager_getFilename(self: *const struct_ZigClangSourceManager, SpellingLoc: struct_ZigClangSourceLocation) ?[*]const u8;
pub extern fn ZigClangSourceManager_getSpellingLineNumber(arg0: ?*const struct_ZigClangSourceManager, Loc: struct_ZigClangSourceLocation) c_uint;
@@ -840,16 +486,16 @@ pub extern fn ZigClangQualType_eq(arg0: struct_ZigClangQualType, arg1: struct_Zi
pub extern fn ZigClangQualType_isConstQualified(arg0: struct_ZigClangQualType) bool;
pub extern fn ZigClangQualType_isVolatileQualified(arg0: struct_ZigClangQualType) bool;
pub extern fn ZigClangQualType_isRestrictQualified(arg0: struct_ZigClangQualType) bool;
-pub extern fn ZigClangType_getTypeClass(self: ?*const struct_ZigClangType) enum_ZigClangTypeClass;
+pub extern fn ZigClangType_getTypeClass(self: ?*const struct_ZigClangType) ZigClangTypeClass;
pub extern fn ZigClangType_isVoidType(self: ?*const struct_ZigClangType) bool;
pub extern fn ZigClangType_getTypeClassName(self: *const struct_ZigClangType) [*]const u8;
pub extern fn ZigClangStmt_getBeginLoc(self: ?*const struct_ZigClangStmt) struct_ZigClangSourceLocation;
-pub extern fn ZigClangStmt_getStmtClass(self: ?*const struct_ZigClangStmt) enum_ZigClangStmtClass;
+pub extern fn ZigClangStmt_getStmtClass(self: ?*const struct_ZigClangStmt) ZigClangStmtClass;
pub extern fn ZigClangStmt_classof_Expr(self: ?*const struct_ZigClangStmt) bool;
-pub extern fn ZigClangExpr_getStmtClass(self: ?*const struct_ZigClangExpr) enum_ZigClangStmtClass;
+pub extern fn ZigClangExpr_getStmtClass(self: ?*const struct_ZigClangExpr) ZigClangStmtClass;
pub extern fn ZigClangExpr_getType(self: ?*const struct_ZigClangExpr) struct_ZigClangQualType;
pub extern fn ZigClangExpr_getBeginLoc(self: ?*const struct_ZigClangExpr) struct_ZigClangSourceLocation;
-pub extern fn ZigClangAPValue_getKind(self: ?*const struct_ZigClangAPValue) enum_ZigClangAPValueKind;
+pub extern fn ZigClangAPValue_getKind(self: ?*const struct_ZigClangAPValue) ZigClangAPValueKind;
pub extern fn ZigClangAPValue_getInt(self: ?*const struct_ZigClangAPValue) ?*const struct_ZigClangAPSInt;
pub extern fn ZigClangAPValue_getArrayInitializedElts(self: ?*const struct_ZigClangAPValue) c_uint;
pub extern fn ZigClangAPValue_getArrayInitializedElt(self: ?*const struct_ZigClangAPValue, i: c_uint) ?*const struct_ZigClangAPValue;
@@ -867,6 +513,11 @@ pub extern fn ZigClangASTUnit_delete(arg0: ?*struct_ZigClangASTUnit) void;
pub extern fn ZigClangFunctionDecl_getType(self: *const struct_ZigClangFunctionDecl) struct_ZigClangQualType;
pub extern fn ZigClangFunctionDecl_getLocation(self: *const struct_ZigClangFunctionDecl) struct_ZigClangSourceLocation;
+pub extern fn ZigClangBuiltinType_getKind(self: *const struct_ZigClangBuiltinType) ZigClangBuiltinTypeKind;
+
+pub extern fn ZigClangFunctionType_getNoReturnAttr(self: *const ZigClangFunctionType) bool;
+pub extern fn ZigClangFunctionType_getCallConv(self: *const ZigClangFunctionType) ZigClangCallingConv;
+pub extern fn ZigClangFunctionType_getReturnType(self: *const ZigClangFunctionType) ZigClangQualType;
pub const ZigClangSourceLocation = struct_ZigClangSourceLocation;
pub const ZigClangQualType = struct_ZigClangQualType;
@@ -942,12 +593,6 @@ pub const ZigClangUnaryOperator = struct_ZigClangUnaryOperator;
pub const ZigClangValueDecl = struct_ZigClangValueDecl;
pub const ZigClangVarDecl = struct_ZigClangVarDecl;
pub const ZigClangWhileStmt = struct_ZigClangWhileStmt;
-pub const ZigClangBO = enum_ZigClangBO;
-pub const ZigClangUO = enum_ZigClangUO;
-pub const ZigClangTypeClass = enum_ZigClangTypeClass;
-pub const ZigClangStmtClass = enum_ZigClangStmtClass;
-pub const ZigClangCK = enum_ZigClangCK;
-pub const ZigClangAPValueKind = enum_ZigClangAPValueKind;
pub const struct_ZigClangSourceLocation = extern struct {
ID: c_uint,
@@ -1060,3 +705,143 @@ pub const ZigClangDeclKind = extern enum {
pub const struct_ZigClangQualType = extern struct {
ptr: ?*c_void,
};
+
+pub const ZigClangBuiltinTypeKind = extern enum {
+ OCLImage1dRO,
+ OCLImage1dArrayRO,
+ OCLImage1dBufferRO,
+ OCLImage2dRO,
+ OCLImage2dArrayRO,
+ OCLImage2dDepthRO,
+ OCLImage2dArrayDepthRO,
+ OCLImage2dMSAARO,
+ OCLImage2dArrayMSAARO,
+ OCLImage2dMSAADepthRO,
+ OCLImage2dArrayMSAADepthRO,
+ OCLImage3dRO,
+ OCLImage1dWO,
+ OCLImage1dArrayWO,
+ OCLImage1dBufferWO,
+ OCLImage2dWO,
+ OCLImage2dArrayWO,
+ OCLImage2dDepthWO,
+ OCLImage2dArrayDepthWO,
+ OCLImage2dMSAAWO,
+ OCLImage2dArrayMSAAWO,
+ OCLImage2dMSAADepthWO,
+ OCLImage2dArrayMSAADepthWO,
+ OCLImage3dWO,
+ OCLImage1dRW,
+ OCLImage1dArrayRW,
+ OCLImage1dBufferRW,
+ OCLImage2dRW,
+ OCLImage2dArrayRW,
+ OCLImage2dDepthRW,
+ OCLImage2dArrayDepthRW,
+ OCLImage2dMSAARW,
+ OCLImage2dArrayMSAARW,
+ OCLImage2dMSAADepthRW,
+ OCLImage2dArrayMSAADepthRW,
+ OCLImage3dRW,
+ OCLIntelSubgroupAVCMcePayload,
+ OCLIntelSubgroupAVCImePayload,
+ OCLIntelSubgroupAVCRefPayload,
+ OCLIntelSubgroupAVCSicPayload,
+ OCLIntelSubgroupAVCMceResult,
+ OCLIntelSubgroupAVCImeResult,
+ OCLIntelSubgroupAVCRefResult,
+ OCLIntelSubgroupAVCSicResult,
+ OCLIntelSubgroupAVCImeResultSingleRefStreamout,
+ OCLIntelSubgroupAVCImeResultDualRefStreamout,
+ OCLIntelSubgroupAVCImeSingleRefStreamin,
+ OCLIntelSubgroupAVCImeDualRefStreamin,
+ Void,
+ Bool,
+ Char_U,
+ UChar,
+ WChar_U,
+ Char8,
+ Char16,
+ Char32,
+ UShort,
+ UInt,
+ ULong,
+ ULongLong,
+ UInt128,
+ Char_S,
+ SChar,
+ WChar_S,
+ Short,
+ Int,
+ Long,
+ LongLong,
+ Int128,
+ ShortAccum,
+ Accum,
+ LongAccum,
+ UShortAccum,
+ UAccum,
+ ULongAccum,
+ ShortFract,
+ Fract,
+ LongFract,
+ UShortFract,
+ UFract,
+ ULongFract,
+ SatShortAccum,
+ SatAccum,
+ SatLongAccum,
+ SatUShortAccum,
+ SatUAccum,
+ SatULongAccum,
+ SatShortFract,
+ SatFract,
+ SatLongFract,
+ SatUShortFract,
+ SatUFract,
+ SatULongFract,
+ Half,
+ Float,
+ Double,
+ LongDouble,
+ Float16,
+ Float128,
+ NullPtr,
+ ObjCId,
+ ObjCClass,
+ ObjCSel,
+ OCLSampler,
+ OCLEvent,
+ OCLClkEvent,
+ OCLQueue,
+ OCLReserveID,
+ Dependent,
+ Overload,
+ BoundMember,
+ PseudoObject,
+ UnknownAny,
+ BuiltinFn,
+ ARCUnbridgedCast,
+ OMPArraySection,
+};
+
+pub const ZigClangCallingConv = extern enum {
+ C,
+ X86StdCall,
+ X86FastCall,
+ X86ThisCall,
+ X86VectorCall,
+ X86Pascal,
+ Win64,
+ X86_64SysV,
+ X86RegCall,
+ AAPCS,
+ AAPCS_VFP,
+ IntelOclBicc,
+ SpirFunction,
+ OpenCLKernel,
+ Swift,
+ PreserveMost,
+ PreserveAll,
+ AArch64VectorCall,
+};
src-self-hosted/translate_c.zig
@@ -11,6 +11,15 @@ pub const Mode = enum {
translate,
};
+// TODO merge with Type.Fn.CallingConvention
+pub const CallingConvention = enum {
+ auto,
+ c,
+ cold,
+ naked,
+ stdcall,
+};
+
pub const ClangErrMsg = Stage2ErrorMsg;
pub const Error = error{
@@ -165,9 +174,95 @@ fn transQualType(c: *Context, qt: ZigClangQualType, source_loc: ZigClangSourceLo
}
fn transType(c: *Context, ty: *const ZigClangType, source_loc: ZigClangSourceLocation) !*ast.Node {
- const type_name = c.str(ZigClangType_getTypeClassName(ty));
- try emitWarning(c, source_loc, "unsupported type: '{}'", type_name);
- return error.UnsupportedType;
+ switch (ZigClangType_getTypeClass(ty)) {
+ .Builtin => {
+ const builtin_ty = @ptrCast(*const ZigClangBuiltinType, ty);
+ switch (ZigClangBuiltinType_getKind(builtin_ty)) {
+ else => {
+ try emitWarning(c, source_loc, "unsupported builtin type");
+ return error.UnsupportedType;
+ },
+ }
+ },
+ .FunctionProto => {
+ const fn_ty = @ptrCast(*const ZigClangFunctionType, ty);
+ const cc = switch (ZigClangFunctionType_getCallConv(fn_ty)) {
+ .C => CallingConvention.c,
+ .X86StdCall => CallingConvention.stdcall,
+ .X86FastCall => {
+ try emitWarning(c, source_loc, "unsupported calling convention: x86 fastcall");
+ return error.UnsupportedType;
+ },
+ .X86ThisCall => {
+ try emitWarning(c, source_loc, "unsupported calling convention: x86 thiscall");
+ return error.UnsupportedType;
+ },
+ .X86VectorCall => {
+ try emitWarning(c, source_loc, "unsupported calling convention: x86 vectorcall");
+ return error.UnsupportedType;
+ },
+ .X86Pascal => {
+ try emitWarning(c, source_loc, "unsupported calling convention: x86 pascal");
+ return error.UnsupportedType;
+ },
+ .Win64 => {
+ try emitWarning(c, source_loc, "unsupported calling convention: win64");
+ return error.UnsupportedType;
+ },
+ .X86_64SysV => {
+ try emitWarning(c, source_loc, "unsupported calling convention: x86 64sysv");
+ return error.UnsupportedType;
+ },
+ .X86RegCall => {
+ try emitWarning(c, source_loc, "unsupported calling convention: x86 reg");
+ return error.UnsupportedType;
+ },
+ .AAPCS => {
+ try emitWarning(c, source_loc, "unsupported calling convention: aapcs");
+ return error.UnsupportedType;
+ },
+ .AAPCS_VFP => {
+ try emitWarning(c, source_loc, "unsupported calling convention: aapcs-vfp");
+ return error.UnsupportedType;
+ },
+ .IntelOclBicc => {
+ try emitWarning(c, source_loc, "unsupported calling convention: intel_ocl_bicc");
+ return error.UnsupportedType;
+ },
+ .SpirFunction => {
+ try emitWarning(c, source_loc, "unsupported calling convention: SPIR function");
+ return error.UnsupportedType;
+ },
+ .OpenCLKernel => {
+ try emitWarning(c, source_loc, "unsupported calling convention: OpenCLKernel");
+ return error.UnsupportedType;
+ },
+ .Swift => {
+ try emitWarning(c, source_loc, "unsupported calling convention: Swift");
+ return error.UnsupportedType;
+ },
+ .PreserveMost => {
+ try emitWarning(c, source_loc, "unsupported calling convention: PreserveMost");
+ return error.UnsupportedType;
+ },
+ .PreserveAll => {
+ try emitWarning(c, source_loc, "unsupported calling convention: PreserveAll");
+ return error.UnsupportedType;
+ },
+ .AArch64VectorCall => {
+ try emitWarning(c, source_loc, "unsupported calling convention: AArch64VectorCall");
+ return error.UnsupportedType;
+ },
+ };
+ try emitWarning(c, source_loc, "TODO: implement transType for FunctionProto");
+ return error.UnsupportedType;
+ },
+ else => {
+ const type_name = c.str(ZigClangType_getTypeClassName(ty));
+ try emitWarning(c, source_loc, "unsupported type: '{}'", type_name);
+ return error.UnsupportedType;
+ },
+ }
}
fn emitWarning(c: *Context, loc: ZigClangSourceLocation, comptime format: []const u8, args: ...) !void {