+; RUN: llvm-upgrade < %s | llvm-as | llvm-dis > %t1.ll
+; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
+; RUN: diff %t1.ll %t2.ll
+
; This test case is used to test opaque type processing, forward references,
; and recursive types. Oh my.
;
%CCC = type { \2* }
%BBB = type { \2*, \2 * }
-%AAA = type { \2*, {\2*}, [{\2*}], {[1x{\2*}]} }
+%AAA = type { \2*, {\2*}, [12x{\2*}], {[1x{\2*}]} }
; Test numbered types
type %CCC
; A complex recursive type...
%Y = type { {%Y*}, %Y* }
-%Z = type { { %Z * }, [%Z] *, {{{ %Z * }}} }
+%Z = type { { %Z * }, [12x%Z] *, {{{ %Z * }}} }
; More ridiculous test cases...
%A = type [ 123x %A*]
; Test the parser for unnamed recursive types...
%P1 = type \1 *
%Y1 = type { { \3 * }, \2 * }
-%Z1 = type { { \3 * }, [\3] *, { { { \5 * } } } }
+%Z1 = type { { \3 * }, [12x\3] *, { { { \5 * } } } }
implementation