1!     { dg-do compile }
2!     { dg-options "-O2" }
3!     PR24823 Flow didn't handle a PARALLEL as destination of a SET properly.
4      SUBROUTINE ZLATMR( M, N, DIST, ISEED, SYM, D, MODE, COND, DMAX,
5     $     RSIGN, GRADE, DL, MODEL, CONDL, DR, MODER,
6     $     PACK, A, LDA, IWORK, INFO )
7      COMPLEX*16         A( LDA, * ), D( * ), DL( * ), DR( * )
8      LOGICAL            BADPVT, DZERO, FULBND
9      COMPLEX*16         ZLATM2, ZLATM3
10      IF( IGRADE.EQ.4 .AND. MODEL.EQ.0 ) THEN
11      END IF
12      IF( IPVTNG.GT.0 ) THEN
13      END IF
14      IF( M.LT.0 ) THEN
15      ELSE IF( IPACK.EQ.-1 .OR. ( ( IPACK.EQ.1 .OR. IPACK.EQ.2 .OR.
16     $        IPACK.EQ.5 .OR. IPACK.EQ.6 ) .AND. ISYM.EQ.1 ) .OR.
17     $        ( IPACK.EQ.3 .AND. ISYM.EQ.1 .AND. ( KL.NE.0 .OR. M.NE.
18     $        6 ) .AND. LDA.LT.KUU+1 ) .OR.
19     $        ( IPACK.EQ.7 .AND. LDA.LT.KLL+KUU+1 ) ) THEN
20         INFO = -26
21      END IF
22      IF( INFO.NE.0 ) THEN
23         RETURN
24      END IF
25      IF( KUU.EQ.N-1 .AND. KLL.EQ.M-1 )
26     $     FULBND = .TRUE.
27      IF( MODE.NE.0 .AND. MODE.NE.-6 .AND. MODE.NE.6 ) THEN
28         TEMP = ABS( D( 1 ) )
29         IF( TEMP.EQ.ZERO .AND. DMAX.NE.CZERO ) THEN
30            INFO = 2
31         END IF
32      END IF
33      IF( ISYM.EQ.0 ) THEN
34      END IF
35      IF( IGRADE.EQ.1 .OR. IGRADE.EQ.3 .OR. IGRADE.EQ.4 .OR. IGRADE.EQ.
36     $     5 .OR. IGRADE.EQ.6 ) THEN
37         IF( INFO.NE.0 ) THEN
38         END IF
39      END IF
40      IF( FULBND ) THEN
41         IF( IPACK.EQ.0 ) THEN
42            IF( ISYM.EQ.0 ) THEN
43               CTEMP = ZLATM3( M, N, I, J, ISUB, JSUB, KL, KU,
44     $              IWORK, SPARSE )
45               DO 120 I = 1, M
46                  CTEMP = ZLATM3( M, N, I, J, ISUB, JSUB, KL, KU,
47     $                 IWORK, SPARSE )
48 120           CONTINUE
49            END IF
50            IF( I.LT.1 ) THEN
51               IF( ISYM.EQ.0 ) THEN
52                  A( J-I+1, I ) = DCONJG( ZLATM2( M, N, I, J, KL,
53     $                 DR, IPVTNG, IWORK, SPARSE ) )
54               ELSE
55                  A( J-I+1, I ) = ZLATM2( M, N, I, J, KL, KU,
56     $                 IPVTNG, IWORK, SPARSE )
57               END IF
58            END IF
59            IF( ISYM.NE.1 ) THEN
60               IF( I.GE.1 .AND. I.NE.J ) THEN
61                  IF( ISYM.EQ.0 ) THEN
62                  END IF
63               END IF
64               A( I-J+KUU+1, J ) = ZLATM2( M, N, I, J, KL, KU,
65     $              DR, IPVTNG, IWORK, SPARSE )
66            END IF
67         END IF
68      END IF
69      IF( IPACK.EQ.0 ) THEN
70         ONORM = ZLANGB( 'M', N, KLL, KUU, A, LDA, TEMPA )
71      END IF
72      IF( ANORM.GE.ZERO ) THEN
73         IF( ANORM.GT.ZERO .AND. ONORM.EQ.ZERO ) THEN
74            IF( IPACK.LE.2 ) THEN
75            END IF
76         END IF
77      END IF
78      END
79