diff --git a/lib/std/target.zig b/lib/std/target.zig index f23e32fbe7395a6b971e9dbb52fe86b5539fa4b1..4acc3b33610bd8c5012626cb7a9b1455045d7993 100644 --- a/lib/std/target.zig +++ b/lib/std/target.zig @@ -2220,6 +2220,17 @@ pub const Target = struct { .longdouble => return 128, }, + .opencl => switch (c_type) { + .char => return 8, + .short, .ushort => return 16, + .int, .uint, .float => return 32, + .long, .ulong, .double => return 64, + .longlong, .ulonglong => return 128, + // Note: The OpenCL specification does not guarantee a particular size for long double, + // but clang uses 128 bits. + .longdouble => return 128, + }, + .cloudabi, .kfreebsd, .lv2, @@ -2234,7 +2245,6 @@ pub const Target = struct { .contiki, .hermit, .hurd, - .opencl, .glsl450, .vulkan, .driverkit,