Stop the assembler from complaining that the input and output files are the same, if neither of them are regular files.
PR 25572 * as.c (main): Allow matching input and outputs when they are not regular files.
This commit is contained in:
parent
a0dcf29705
commit
3c968de5c7
|
@ -1,3 +1,9 @@
|
|||
2020-03-06 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
PR 25572
|
||||
* as.c (main): Allow matching input and outputs when they are
|
||||
not regular files.
|
||||
|
||||
2020-03-06 Jan Beulich <jbeulich@suse.com>
|
||||
|
||||
* config/tc-i386.c (match_mem_size): Generalize broadcast special
|
||||
|
|
8
gas/as.c
8
gas/as.c
|
@ -1290,7 +1290,13 @@ main (int argc, char ** argv)
|
|||
/* Different files may have the same inode number if they
|
||||
reside on different devices, so check the st_dev field as
|
||||
well. */
|
||||
&& sib.st_dev == sob.st_dev)
|
||||
&& sib.st_dev == sob.st_dev
|
||||
/* PR 25572: Only check regular files. Devices, sockets and so
|
||||
on might actually work as both input and output. Plus there
|
||||
is a use case for using /dev/null as both input and output
|
||||
when checking for command line option support in a script:
|
||||
as --foo /dev/null -o /dev/null; if $? then ... */
|
||||
&& S_ISREG (sib.st_mode))
|
||||
{
|
||||
const char *saved_out_file_name = out_file_name;
|
||||
|
||||
|
|
Loading…
Reference in New Issue