175f9b189SPeter Klausler! RUN: %python %S/test_errors.py %s %flang_fc1 275f9b189SPeter Klausler! Shape conformance checks on assignments 375f9b189SPeter Klauslerprogram test 4*6c09a9bfSPeter Klausler type t 5*6c09a9bfSPeter Klausler integer n 6*6c09a9bfSPeter Klausler end type 775f9b189SPeter Klausler real :: a0, a1a(2), a1b(3), a2a(2,3), a2b(3,2) 8*6c09a9bfSPeter Klausler type(t) c(10) 975f9b189SPeter Klausler a0 = 0. ! ok 1075f9b189SPeter Klausler !ERROR: No intrinsic or user-defined ASSIGNMENT(=) matches scalar REAL(4) and rank 1 array of REAL(4) 1175f9b189SPeter Klausler a0 = [0.] 1275f9b189SPeter Klausler a1a = 0. ! ok 1375f9b189SPeter Klausler a1a = [(real(j),j=1,2)] ! ok 1475f9b189SPeter Klausler !ERROR: Dimension 1 of left-hand side has extent 2, but right-hand side has extent 3 1575f9b189SPeter Klausler a1a = [(real(j),j=1,3)] 1675f9b189SPeter Klausler !ERROR: Dimension 1 of left-hand side has extent 3, but right-hand side has extent 2 1775f9b189SPeter Klausler a1b = a1a 1875f9b189SPeter Klausler !ERROR: No intrinsic or user-defined ASSIGNMENT(=) matches rank 1 array of REAL(4) and rank 2 array of REAL(4) 1975f9b189SPeter Klausler a1a = a2a 2075f9b189SPeter Klausler a1a = a2a(:,1) ! ok 2175f9b189SPeter Klausler a2a = 0. ! ok 2275f9b189SPeter Klausler a2a(:,1) = a1a ! ok 2375f9b189SPeter Klausler !ERROR: Dimension 1 of left-hand side has extent 3, but right-hand side has extent 2 2475f9b189SPeter Klausler a2a(1,:) = a1a 2575f9b189SPeter Klausler !ERROR: Dimension 1 of left-hand side has extent 2, but right-hand side has extent 3 2675f9b189SPeter Klausler a2a = a2b 27*6c09a9bfSPeter Klausler !ERROR: Dimension 1 of left-hand side has extent 10, but right-hand side has extent 0 28*6c09a9bfSPeter Klausler c(1:10) = c(10:1) 2975f9b189SPeter Klauslerend 30