We currently don't allow unresolved opaque types!
[oota-llvm.git] / test / Assembler / 2002-01-24-ValueRefineAbsType.ll
1 ; This testcase used to fail due to a lack of this diff in Value.cpp:
2 ; diff -r1.16 Value.cpp
3 ; 11c11
4 ; < #include "llvm/Type.h"
5 ; ---
6 ; > #include "llvm/DerivedTypes.h"
7 ; 74c74,76
8 ; <   assert(Ty.get() == (const Type*)OldTy &&"Can't refine anything but my type!");
9 ; ---
10 ; >   assert(Ty.get() == OldTy &&"Can't refine anything but my type!");
11 ; >   if (OldTy == NewTy && !OldTy->isAbstract())
12 ; >     Ty.removeUserFromConcrete();
13 ;
14 ; This was causing an assertion failure, due to the "foo" Method object never releasing
15 ; it's reference to the opaque %bb value.
16 ;
17 declare void "foo"(%bb)
18
19 %exception_descriptor = type opaque  
20
21 %bb = type int
22
23 %exception_descriptor = type int
24
25 implementation
26