1 // compile-flags: -g -C no-prepopulate-passes
2 // ignore-tidy-linelength
10 pub fn empty(x: &EmptyEnum) -> EmptyEnum {
11 // CHECK: @empty({{.*}}) unnamed_addr #0
12 // CHECK-NOT: ret void
13 // CHECK: call void @llvm.trap()
18 pub struct Foo(String, EmptyEnum);
21 pub fn foo(x: String, y: &EmptyEnum) -> Foo {
22 // CHECK: @foo({{.*}}) unnamed_addr #0
23 // CHECK-NOT: ret %Foo
24 // CHECK: call void @llvm.trap()
29 // CHECK: attributes #0 = {{{.*}} noreturn {{.*}}}
31 // CHECK: DISubprogram(name: "empty", {{.*}} DIFlagNoReturn
32 // CHECK: DISubprogram(name: "foo", {{.*}} DIFlagNoReturn