Unable to understand, in objdump, the user is not using the name, so using a.out
Why not use an empty string?
if (remaining == argc)
/* The user didn't specify a name so we use a.out. */
result = process_file ("a.out", false);
Why not use an empty string as a filename? A user can type
to pass an empty string if that's really what she wants.
Defaulting to "a.out" in the absence of a filename is traditional.