This is an archive of the discontinued LLVM Phabricator instance.

[FileCollector] Fix that the file system case-sensitivity check was inverted
ClosedPublic

Authored by teemperor on Feb 16 2021, 9:10 AM.

Details

Summary

real_path returns an std::error_code which evaluates to true in case an error
happens and false if not. This code was checking the inverse, so case-insensitive
file systems ended up being detected as case sensitive.

Tested using an LLDB reproducer test as we anyway need a real file system and
also some matching logic to detect whether the respective file system is case-sensitive
(which the test is doing via some Python checks that we can't really emulate with
the usual FileCheck logic).

Fixes rdar://67003004

Diff Detail

Event Timeline

teemperor created this revision.Feb 16 2021, 9:10 AM
teemperor requested review of this revision.Feb 16 2021, 9:10 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 16 2021, 9:10 AM
JDevlieghere accepted this revision.Feb 16 2021, 10:33 AM

LGTM. Thanks for getting to the bottom of this.

This revision is now accepted and ready to land.Feb 16 2021, 10:33 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 16 2021, 11:21 AM