Changes between Initial Version and Version 1 of Ticket #59992, comment 20


Ignore:
Timestamp:
Mar 27, 2020, 8:46:45 AM (4 years ago)
Author:
MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #59992, comment 20

    initial v1  
    44Minimal reproducible error is
    55{{{
    6 echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -
     6echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -o test.o -
    77}}}
    88The odd part is that this is **not** an error
    99{{{
    10 echo "#import <Foundation/Foundation.h>" | clang -xobjective-c -c -fmodules -v -
    11 echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -
     10echo "#import <Foundation/Foundation.h>" | clang -xobjective-c -c -fmodules -v -o test.o -
     11echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -o test.o -
    1212}}}
    1313The reason seems to be the flag `-fmodules-cache-path=...`.\\
    1414{{{
    15 echo "#import <Foundation/Foundation.h>" | clang -xobjective-c -c -fmodules -v -
     15echo "#import <Foundation/Foundation.h>" | clang -xobjective-c -c -fmodules -v -o test.o -
    1616}}}
    1717generates a bunch of precompiled header files.\\
    1818Once generated,
    1919{{{
    20 echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -
     20echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -o test.o -
    2121}}}
    2222uses them with no issues.
     
    2424If the cache files are deleted,
    2525{{{
    26 echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -
     26echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -fmodules -v -o test.o -
    2727}}}
    2828goes back to generating an error.
     
    3636Removing `-fmodules` also prevents the error
    3737{{{
    38 echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -v -
     38echo "#import <Foundation/Foundation.h>" | env CPATH=/opt/local/include clang -xobjective-c -c -v -o test.o -
    3939}}}
    4040