According to the F2003 standard, the LENGTH argument does "not consider any possible truncation or padding in assigning the command argument value to the VALUE argument" (13.7.42). However, gfortran appears to use the minimum of the length of the VALUE argument (if present) and the length of the command argument.
(svn revision 156557) -- Summary: Incorrect length returned from get_command_argument intrinsic Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libfortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ian_harvey at bigpond dot com GCC build triplet: i686-pc-mingw32 GCC host triplet: i686-pc-mingw32 GCC target triplet: i686-pc-mingw32 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42996