https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119758

            Bug ID: 119758
           Summary: d: -fonly= argument only matches when including full
                    relative path to the input file
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: d
          Assignee: ibuclaw at gdcproject dot org
          Reporter: ibuclaw at gcc dot gnu.org
  Target Milestone: ---

For example:

$ cd build/gcc

$ gdc -fonly=transitive.d \
    ../../gcc/d/dmd/visitor/permissive.d \
    ../../gcc/d/dmd/visitor/transitive.d

d21: error: cannot find input file ‘transitive.d’
import path[0] = /usr/lib/gcc/x86_64-linux-gnu/13/include/d

$ gdc -I ../../gcc/d/dmd/visitor \
    -fonly=transitive.d \
    ../../gcc/d/dmd/visitor/permissive.d \
    ../../gcc/d/dmd/visitor/transitive.d

d21: error: cannot find input file ‘transitive.d’
import path[0] = /usr/lib/gcc/x86_64-linux-gnu/13/include/d
import path[1] = «srcdir»/gcc/d/dmd/visitor

$ ls -1 «srcdir»/gcc/d/dmd/visitor
foreachvar.d
package.d
parsetime.d
permissive.d
postorder.d
statement_rewrite_walker.d
transitive.d

$ gdc -fonly=../../gcc/d/dmd/visitor/transitive.d \
    ../../gcc/d/dmd/visitor/permissive.d \
    ../../gcc/d/dmd/visitor/transitive.d

# Compiles

This makes the option impractical except for trivial cases such as building in
the same directory as where sources are located.

Reply via email to