recursive-type-2.ll 406 B

1234567891011121314
  1. ; RUN: not llvm-as %s -o /dev/null 2>&1 | FileCheck %s
  2. %rt1 = type { i32, { i8, %rt2, i8 }, i32 }
  3. %rt2 = type { i64, { i6, %rt3 } }
  4. %rt3 = type { %rt1 }
  5. define i32 @main() nounwind {
  6. entry:
  7. ; Check that mutually recursive types trigger an error instead of segfaulting,
  8. ; when the recursion isn't through a pointer to the type.
  9. ; CHECK: Cannot allocate unsized type
  10. %0 = alloca %rt2
  11. ret i32 0
  12. }