http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54964

             Bug #: 54964
           Summary: -MMD is silently ignored with -x assembler (or
                    inferred language from .s extension)
    Classification: Unclassified
           Product: gcc
           Version: 4.6.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: driver
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: a...@fischman.org


When gcc is asked to compile a .s into a .o, or when told to compile a language
"assembler" file, it ignores the request for a dependency file.  -x
assembler-with-cpp emits the requested dependency file.  

It would be nice if gcc never ignored the -MMD flag.

Repro: note the first two commands fail to create empty.o.d, whereas the last
command does not fail:

$ rm -f empty.o* ; touch empty.s ; gcc -MMD -MF empty.o.d -c empty.s -o empty.o
; ls -al empty.o*
-rw-r--r-- 1 fischman eng 657 Oct 17 17:04 empty.o
$ rm -f empty.o* ; gcc -MMD -MF empty.o.d -x assembler /dev/null -c -o empty.o
; ls -al empty.o*
-rw-r--r-- 1 fischman eng 657 Oct 17 16:56 empty.o
$ rm -f empty.o* ; gcc -MMD -MF empty.o.d -x assembler-with-cpp /dev/null -c -o
empty.o ; ls -al empty.o*
-rw-r--r-- 1 fischman eng 657 Oct 17 16:56 empty.o
-rw-r--r-- 1 fischman eng  19 Oct 17 16:56 empty.o.d

Reply via email to