xref: /llvm-project/clang/test/CodeGenObjC/block-ptr-type-crash.m (revision 0f1c1be1968076d6f96f8a7bcc4a15cf195ecd97)
1// RUN: %clang_cc1 -Wno-objc-root-class -Wno-int-conversion -fblocks -o /dev/null -triple x86_64-- -emit-llvm %s
2// REQUIRES: asserts
3// Verify there is no assertion.
4
5typedef unsigned long long uint64_t;
6typedef enum AnEnum : uint64_t AnEnum;
7enum AnEnum: uint64_t {
8    AnEnumA
9};
10
11typedef void (^BlockType)(void);
12@interface MyClass
13@end
14@implementation MyClass
15- (void)_doStuff {
16  struct {
17    int identifier;
18    AnEnum type;
19    BlockType handler;
20  } var = {
21    "hello",
22    AnEnumA,
23    ((void *)0)
24  };
25}
26@end
27