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