Commit bc69cb9b10

Evan Haas <evan@lagerdata.com>
2024-05-01 09:11:46
translate-c: update UnaryExprOrTypeTrait enum for LLVM 18
1 parent badc28c
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) {
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,
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), "");
 
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 {