[all-commits] [llvm/llvm-project] 832f4c: [clang-cl] Add new option `/pathmap:<from>=<to>` t...

Vladimir Vereschaka via All-commits all-commits at lists.llvm.org
Fri Jun 5 17:25:44 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 832f4c41ae172950bbb5797803d6ec1a94edd146
      https://github.com/llvm/llvm-project/commit/832f4c41ae172950bbb5797803d6ec1a94edd146
  Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Options/Options.td
    A clang/test/CodeGenCXX/cl-pathmap.cpp
    A clang/test/Driver/cl-pathmap.c
    A clang/test/Preprocessor/cl-pathmap.c

  Log Message:
  -----------
  [clang-cl] Add new option `/pathmap:<from>=<to>` to replace the path prefix <from> with <to>. (#198664)

This option matches MSVC options and does the path substitution for the
file references in the preprocessor macros, debug and coverage information.

This option acts as a clang's ``-ffile-prefix-map=value`` and with some
known differences in behaviour with original CL's option that do not affect 
the functionality:
* nomalizes the macro prefix map pathes -- removes `./` and uses the target's
platform-specific path separator character when exanding the preprocessor
macros -- ``-ffile-reproducible`` (but not the debug and coverage prefix maps).
* does not require ``/experimental:deterministic`` as by MSVC. It needed for 
removing a hostname from a mangling hash gen, but clang-cl does not use
a hostname  when generates the hashes.

Known issues:
  * does not remap the pathes within PCH/PCM files.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list