syntax error: Token '::' is unexpected here
  --> tests/errors/continue_compilation_3.f90:57:9
   |
57 |     rea :: test_real(12)
   |         ^^ 

syntax error: Token ')' is unexpected here
  --> tests/errors/continue_compilation_3.f90:58:21
   |
58 |     real :: test_re()
   |                     ^ 

syntax error: The LFortran pragma !LF$ must be followed by a space
   --> tests/errors/continue_compilation_3.f90:171:9
    |
171 |         !LF$unroll 4  ! Error: Missing space after `!LF$`
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Module 'continue_compilation_3_fake_module' modfile was not found
  --> tests/errors/continue_compilation_3.f90:48:5
   |
48 |     use continue_compilation_3_fake_module
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Explicit shaped array with nonconstant bounds
  --> tests/errors/continue_compilation_3.f90:67:23
   |
67 |     integer :: arr_nc(minval(abs(a)))
   |                       ^^^^^^^^^^^^^^ 

semantic error: Assumed-rank arrays are not supported in print statements
  --> tests/errors/continue_compilation_3.f90:30:18
   |
30 |         print *, x
   |                  ^ 

semantic error: Assumed rank arrays cannot be used as `source` argument to reshape intrinsic
  --> tests/errors/continue_compilation_3.f90:31:26
   |
31 |         print *, reshape(x, [size(x)])
   |                          ^ 

semantic error: Assumed-rank array `x` cannot be accessed outside a select rank block
  --> tests/errors/continue_compilation_3.f90:32:18
   |
32 |         print *, x(1)
   |                  ^^^^ 

semantic error: Assumed-rank array 'x' must be a dummy argument
  --> tests/errors/continue_compilation_3.f90:33:6
   |
33 |      x = [1, 2]
   |      ^ 

semantic error: Comparison operations are not allowed on assumed-rank arrays ('x')
  --> tests/errors/continue_compilation_3.f90:34:19
   |
34 |         print *, (x /= [1, 2])
   |                   ^^^^^^^^^^^ 

semantic error: Non-variable expression in variable definition context (actual argument to INTENT = OUT/INOUT)
  --> tests/errors/continue_compilation_3.f90:68:26
   |
68 |     call intent_out_test(1)  ! Error: literal constant with intent(out)
   |                          ^ 

semantic error: Non-variable expression in variable definition context (actual argument to INTENT = OUT/INOUT)
  --> tests/errors/continue_compilation_3.f90:69:26
   |
69 |     call intent_out_test(x + 1)  ! Error: expression with intent(out)
   |                          ^^^^^ 

semantic error: Non-variable expression in variable definition context (actual argument to INTENT = OUT/INOUT)
  --> tests/errors/continue_compilation_3.f90:70:28
   |
70 |     call intent_inout_test(2)  ! Error: literal constant with intent(inout)
   |                            ^ 

semantic error: Non-variable expression in variable definition context (actual argument to INTENT = OUT/INOUT)
  --> tests/errors/continue_compilation_3.f90:71:28
   |
71 |     call intent_inout_test(x * 2)  ! Error: expression with intent(inout)
   |                            ^^^^^ 

semantic error: Type mismatch in argument `i`: expected `real(4)` but got `integer(4)`
  --> tests/errors/continue_compilation_3.f90:72:34
   |
72 |     call check_incompatible_type(i)  ! Error: incompatible type passed
   |                                  ^ 

semantic error: Argument 1 to Iachar must have length 1
  --> tests/errors/continue_compilation_3.f90:74:14
   |
74 |     print *, iachar(s1)
   |              ^^^^^^^^^^ 

semantic error: Empty array constructor is not allowed
  --> tests/errors/continue_compilation_3.f90:91:9
   |
91 |     a = []
   |         ^^ 

semantic error: Empty array constructor is not allowed
  --> tests/errors/continue_compilation_3.f90:93:16
   |
93 |     print *, [[[], [[]]], [[]], []]
   |                ^^ 

semantic error: Empty array constructor is not allowed
  --> tests/errors/continue_compilation_3.f90:94:16
   |
94 |     print *, [[[], [[]]], []]
   |                ^^ 

semantic error: Rank mismatch in array reference: the array `b` has rank `1`, but is referenced as rank `2`
  --> tests/errors/continue_compilation_3.f90:96:5
   |
96 |     b(:,:) = 1
   |     ^^^^^^ 

semantic error: Rank mismatch in array reference: the array `b` has rank `1`, but is referenced as rank `2`
  --> tests/errors/continue_compilation_3.f90:97:5
   |
97 |     b(:,:) = 2
   |     ^^^^^^ 

semantic error: Type member xx is not an array so it cannot be indexed.
  --> tests/errors/continue_compilation_3.f90:99:5
   |
99 |     y%xx(:) = 1
   |     ^^^^^^^ 

semantic error: Rank mismatch in array reference: the array `str` has rank `1`, but is referenced as rank `2`
   --> tests/errors/continue_compilation_3.f90:101:5
    |
101 |     str(1, 2)(:) = '1234'
    |     ^^^^^^^^^^^^ 

semantic error: Rank mismatch in array reference: the array `str` has rank `1`, but is referenced as rank `3`
   --> tests/errors/continue_compilation_3.f90:102:5
    |
102 |     str(1,2,3)(:) = '1234'
    |     ^^^^^^^^^^^^^ 

semantic error: Type-spec cannot contain an asterisk for a type parameter
   --> tests/errors/continue_compilation_3.f90:104:14
    |
104 |     print *, [character(*) :: "a", "b", "ball", "cat"]
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Type-spec cannot contain an asterisk for a type parameter
   --> tests/errors/continue_compilation_3.f90:105:14
    |
105 |     print *, [character(*) :: "a2", "b2", "ball2", "cat2"]
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Different shape for array assignment on dimension 1(3 and 2)
   --> tests/errors/continue_compilation_3.f90:107:5
    |
107 |     x1 = reshape([1,2,3,4],[2,2])
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Different shape for array assignment on dimension 1(3 and 1)
   --> tests/errors/continue_compilation_3.f90:108:5
    |
108 |     x1 = reshape([1,2,3,4],[1,2])
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Arithmetic if (x) requires an integer or real for `x`
   --> tests/errors/continue_compilation_3.f90:112:9
    |
112 |     if ("yy") 1, 2, 3
    |         ^^^^ 

semantic error: Incorrect number of arguments passed to the 'size' intrinsic. It accepts at least 1 and at most 3 arguments.
   --> tests/errors/continue_compilation_3.f90:119:9
    |
119 |     i = size(a1, 1, 4, kind=4)
    |         ^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Incorrect number of arguments passed to the 'size' intrinsic. It accepts at least 1 and at most 3 arguments.
   --> tests/errors/continue_compilation_3.f90:120:9
    |
120 |     i = size()
    |         ^^^^^^ 

semantic error: Cannot assign to a constant variable
   --> tests/errors/continue_compilation_3.f90:122:5
    |
122 |     x3 = 1
    |     ^^^^^^ assignment here
    |
 55 |     integer, parameter :: x3 = 2
    |                           ~~~~~~ declared as constant

semantic error: The end variable of the data implied do loop must be constants
   --> tests/errors/continue_compilation_3.f90:125:22
    |
125 |     data(a1(i), i=1, k) / 1, 2, 3 /
    |                      ^ 

semantic error: The increment variable of the data implied do loop must be a constant
   --> tests/errors/continue_compilation_3.f90:127:25
    |
127 |     data(a1(i), i=1, 3, k) / 1, 2, 3 /
    |                         ^ 

semantic error: The start variable of the data implied do loop must be constants
   --> tests/errors/continue_compilation_3.f90:129:19
    |
129 |     data(a1(i), i=k, 3) / 1, 2, 3 /
    |                   ^ 

semantic error: Variable 'foo' is not declared
   --> tests/errors/continue_compilation_3.f90:132:9
    |
132 |     i = foo
    |         ^^^ 'foo' is undeclared

semantic error: Invalid argument `end` supplied
   --> tests/errors/continue_compilation_3.f90:134:5
    |
134 |     rewind(end="world")
    |     ^^^^^^^^^^^^^^^^^^^ 

semantic error: Kind of all the arguments of Sign must be the same
   --> tests/errors/continue_compilation_3.f90:138:14
    |
138 |     print *, sign(1, 1_8)
    |              ^^^^^^^^^^^^ 

semantic error: Argument 1 of dabs must be of double precision real type
   --> tests/errors/continue_compilation_3.f90:140:13
    |
140 |     print*, dabs(1)
    |             ^^^^^^^ 

semantic error: Argument of `sqrt` has a negative argument
   --> tests/errors/continue_compilation_3.f90:142:14
    |
142 |     print *, sqrt(-1.0)
    |              ^^^^^^^^^^ 

semantic error: Binary numeric operators cannot be used on strings
   --> tests/errors/continue_compilation_3.f90:144:14
    |
144 |     print *, "a" + "b"
    |              ^^^^^^^^^ help: use '//' for string concatenation

semantic error: The first index in string section is less than 1
   --> tests/errors/continue_compilation_3.f90:147:19
    |
147 |     print*, "s:", s(-1:4)
    |                   ^^^^^^^ 

semantic error: Substring `start` is less than one
   --> tests/errors/continue_compilation_3.f90:149:13
    |
149 |     print*, s1(-2:6)
    |             ^^^^^^^^ 

semantic error: Substring end index exceeds the string length
   --> tests/errors/continue_compilation_3.f90:152:13
    |
152 |     print*, s1(1: 9)
    |             ^^^^^^^^ 

semantic error: Substring end index at must be of type integer
   --> tests/errors/continue_compilation_3.f90:154:18
    |
154 |     print*, s1(1:5.2)
    |                  ^^^ 

semantic error: Substring start index at must be of type integer
   --> tests/errors/continue_compilation_3.f90:156:16
    |
156 |     print*, s1(1.1:5)
    |                ^^^ 

semantic error: Substring stride must be of type integer
   --> tests/errors/continue_compilation_3.f90:158:19
    |
158 |     print*, s(1:5:2.2)
    |                   ^^^ 

semantic error: Type mismatch in assignment, the types must be compatible
   --> tests/errors/continue_compilation_3.f90:160:5
    |
160 |     x = "x"
    |     ^   ^^^ type mismatch (integer and string)

semantic error: Type mismatch in binary operator, the types must be compatible
   --> tests/errors/continue_compilation_3.f90:162:9
    |
162 |     x = 5 + "x"
    |         ^   ^^^ type mismatch (integer and string)

semantic error: Type mismatch in assignment, the types must be compatible
   --> tests/errors/continue_compilation_3.f90:162:5
    |
162 |     x = 5 + "x"
    |     ^       ^^^ type mismatch (integer and string)

semantic error: Subroutine `bpe` called as a function
   --> tests/errors/continue_compilation_3.f90:165:9
    |
165 |     i = bpe()
    |         ^^^^^ 

semantic error: Variable 'xx' is not declared
   --> tests/errors/continue_compilation_3.f90:166:14
    |
166 |     print *, xx
    |              ^^ 'xx' is undeclared

semantic error: Variable 'test_re' is not declared
   --> tests/errors/continue_compilation_3.f90:167:5
    |
167 |     test_re = 1245.13
    |     ^^^^^^^ 'test_re' is undeclared

semantic error: Array reference is not allowed on scalar variable
   --> tests/errors/continue_compilation_3.f90:168:5
    |
168 |     c(1) = 1
    |     ^^^^ 

semantic error: Kind of all the arguments of Mergebits must be the same
   --> tests/errors/continue_compilation_3.f90:176:14
    |
176 |     print *, merge_bits(1, 2, 3_8)
    |              ^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Kind of all the arguments of Mergebits must be the same
   --> tests/errors/continue_compilation_3.f90:177:14
    |
177 |     print *, merge_bits(merge_i,merge_j,merge_k)
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:181:14
    |
181 |     print *, 5 .and. .true.
    |              ^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:184:14
    |
184 |     print *, 3.14 .and. .false.
    |              ^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:187:14
    |
187 |     print *, 5 .and. 6
    |              ^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:190:14
    |
190 |     print *, 5 .or. 6
    |              ^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:191:14
    |
191 |     print *, 5 .eqv. 6
    |              ^ 

semantic error: Right operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:192:28
    |
192 |     print *, .true. .neqv. 6
    |                            ^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:193:14
    |
193 |     print *, 3.14 .and. "abcd"
    |              ^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:194:14
    |
194 |     print *, "abcd" .neqv. "cdef"
    |              ^^^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:195:14
    |
195 |     print *, 1 .neqv. 2
    |              ^ 

semantic error: Left operand's array element type must be LOGICAL
   --> tests/errors/continue_compilation_3.f90:196:14
    |
196 |     print *, [1,2,3] .and. .true.
    |              ^^^^^^^ 

semantic error: Left operand's array element type must be LOGICAL
   --> tests/errors/continue_compilation_3.f90:197:14
    |
197 |     print *, [1.0, 2.0] .or. [3.0, 4.0]
    |              ^^^^^^^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:198:14
    |
198 |     print *, "str1" .or. "str2"
    |              ^^^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:199:14
    |
199 |     print *, "x" .and. .false.
    |              ^^^ 

semantic error: Operand of .not. operator is string
   --> tests/errors/continue_compilation_3.f90:200:14
    |
200 |     print *, .NOT. "lf"
    |              ^^^^^^^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:201:14
    |
201 |     print *, "8356" .or. 8356
    |              ^^^^^^ 

semantic error: Left operand must be LOGICAL or LOGICAL array
   --> tests/errors/continue_compilation_3.f90:202:14
    |
202 |     print *, "8356" .eqv. 8356.00
    |              ^^^^^^ 

semantic error: Left operand's array element type must be LOGICAL
   --> tests/errors/continue_compilation_3.f90:203:14
    |
203 |     print *, ['c', 'o', 'd', 'e'] .or. ['m', 'a', 's']
    |              ^^^^^^^^^^^^^^^^^^^^ 

semantic error: Different `character` lengths 7 and 2 in array constructor
   --> tests/errors/continue_compilation_3.f90:204:26
    |
204 |     print *, ["welcome", "to", "lf"] .and. "contributors"  !even size diff of array element must be caught
    |                          ^^^^ 

semantic error: Different types of elements found in array constructor: string and integer(4)
   --> tests/errors/continue_compilation_3.f90:205:16
    |
205 |     print *,  [( '*',i , i = 1, 10 )] 
    |                ^^^^^^^^^^^^^^^^^^^^^ 

semantic error: cannot pass unallocatable string to allocatable argument
   --> tests/errors/continue_compilation_3.f90:206:13
    |
206 |     call ss("hello")
    |             ^^^^^^^ make this expression allocatable

semantic error: Argument of 'size' must be an array
   --> tests/errors/continue_compilation_3.f90:209:23
    |
209 |         print *, size(bpe)
    |                       ^^^ 

semantic error: Variable 'd' is not declared
   --> tests/errors/continue_compilation_3.f90:210:15
    |
210 |         bpe = d
    |               ^ 'd' is undeclared

semantic error: Assignment to subroutine is not allowed
   --> tests/errors/continue_compilation_3.f90:210:9
    |
210 |         bpe = d
    |         ^^^ 
