HomePhabricator

[Support] Fix recursive response file expansion guard

Description

[Support] Fix recursive response file expansion guard

Response file expansion limits the amount of expansion to prevent
potential infinite recursion. However, the current logic assumes that
any argument beginning with @ is a response file, which is not true for
e.g. -Xlinker -rpath -Xlinker @executable_path/../lib on Darwin.
Having too many of these non-response file arguments beginning with @
prevents actual response files from being expanded. Instead, limit based
on the number of successful response file expansions, which should still
prevent infinite recursion but also avoid false positives.

Differential Revision: https://reviews.llvm.org/D60631

Details

Committed
smeenaiApr 15 2019, 2:31 PM
Differential Revision
D60631: [Support] Fix recursive response file expansion guard
Parents
rL358451: [Support] Add a test for recursive response file expansion
Branches
Unknown
Tags
Unknown