diff --git a/src/clang.zig b/src/clang.zig index 4d25cb2f78..04c142b3e3 100644 --- a/src/clang.zig +++ b/src/clang.zig @@ -2169,10 +2169,11 @@ pub const Expr_ConstantExprKind = enum(c_int) { pub const UnaryExprOrTypeTrait_Kind = enum(c_int) { SizeOf, + DataSizeOf, AlignOf, + PreferredAlignOf, VecStep, OpenMPRequiredSimdAlign, - PreferredAlignOf, }; pub const OffsetOfNode_Kind = enum(c_int) { diff --git a/src/translate_c.zig b/src/translate_c.zig index 2fbcf72c2c..a7de9a02a5 100644 --- a/src/translate_c.zig +++ b/src/translate_c.zig @@ -3594,6 +3594,7 @@ fn transUnaryExprOrTypeTraitExpr( const node = switch (kind) { .SizeOf => try Tag.sizeof.create(c.arena, type_node), .AlignOf => try Tag.alignof.create(c.arena, type_node), + .DataSizeOf, .PreferredAlignOf, .VecStep, .OpenMPRequiredSimdAlign, diff --git a/src/zig_clang.cpp b/src/zig_clang.cpp index 92889f4221..635bad1374 100644 --- a/src/zig_clang.cpp +++ b/src/zig_clang.cpp @@ -2247,6 +2247,12 @@ static_assert((clang::Expr::ConstantExprKind)ZigClangExpr_ConstantExprKind_NonCl static_assert((clang::Expr::ConstantExprKind)ZigClangExpr_ConstantExprKind_ClassTemplateArgument == clang::Expr::ConstantExprKind::ClassTemplateArgument, ""); static_assert((clang::Expr::ConstantExprKind)ZigClangExpr_ConstantExprKind_ImmediateInvocation == clang::Expr::ConstantExprKind::ImmediateInvocation, ""); +static_assert((clang::UnaryExprOrTypeTrait)ZigClangUnaryExprOrTypeTrait_Kind::ZigClangUnaryExprOrTypeTrait_KindSizeOf == clang::UnaryExprOrTypeTrait::UETT_SizeOf, ""); +static_assert((clang::UnaryExprOrTypeTrait)ZigClangUnaryExprOrTypeTrait_Kind::ZigClangUnaryExprOrTypeTrait_KindDataSizeOf == clang::UnaryExprOrTypeTrait::UETT_DataSizeOf, ""); +static_assert((clang::UnaryExprOrTypeTrait)ZigClangUnaryExprOrTypeTrait_Kind::ZigClangUnaryExprOrTypeTrait_KindAlignOf == clang::UnaryExprOrTypeTrait::UETT_AlignOf, ""); +static_assert((clang::UnaryExprOrTypeTrait)ZigClangUnaryExprOrTypeTrait_Kind::ZigClangUnaryExprOrTypeTrait_KindPreferredAlignOf == clang::UnaryExprOrTypeTrait::UETT_PreferredAlignOf, ""); +static_assert((clang::UnaryExprOrTypeTrait)ZigClangUnaryExprOrTypeTrait_Kind::ZigClangUnaryExprOrTypeTrait_KindVecStep == clang::UnaryExprOrTypeTrait::UETT_VecStep, ""); +static_assert((clang::UnaryExprOrTypeTrait)ZigClangUnaryExprOrTypeTrait_Kind::ZigClangUnaryExprOrTypeTrait_KindOpenMPRequiredSimdAlign == clang::UnaryExprOrTypeTrait::UETT_OpenMPRequiredSimdAlign, ""); static_assert(sizeof(ZigClangAPValue) == sizeof(clang::APValue), ""); diff --git a/src/zig_clang.h b/src/zig_clang.h index a0fc3d4cad..6d7ebc64f5 100644 --- a/src/zig_clang.h +++ b/src/zig_clang.h @@ -1311,10 +1311,11 @@ enum ZigClangExpr_ConstantExprKind { enum ZigClangUnaryExprOrTypeTrait_Kind { ZigClangUnaryExprOrTypeTrait_KindSizeOf, + ZigClangUnaryExprOrTypeTrait_KindDataSizeOf, ZigClangUnaryExprOrTypeTrait_KindAlignOf, + ZigClangUnaryExprOrTypeTrait_KindPreferredAlignOf, ZigClangUnaryExprOrTypeTrait_KindVecStep, ZigClangUnaryExprOrTypeTrait_KindOpenMPRequiredSimdAlign, - ZigClangUnaryExprOrTypeTrait_KindPreferredAlignOf, }; enum ZigClangOffsetOfNode_Kind {