Identifying Commandline Arguments

For whatever it’s worth, my take is as follows.

Any processor that fails to detect and report a violation of a numbered constraint in the standard, “C934 (R927) If type-spec appears, it shall specify a type with which each allocate-object is type compatible,” as in the code below, does not conform:

   character(len=:), allocatable :: s
   integer, allocatable :: i
   allocate( character :: s, i )
end

Intel Fortran can thus be seen to have a bug:

C:\Temp>ifort /c /standard-semantics a.f90
Intel(R) Fortran Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.3.0 Build 20210609_000000
Copyright (C) 1985-2021 Intel Corporation. All rights reserved.

C:\Temp>

gfortran conforms:

C:\Temp>gfortran -c a.f90
a.f90:3:29:

3 |    allocate( character :: s, i )
  |                             1

Error: Type of entity at (1) is type incompatible with typespec

C:\Temp>