This relands 73e585e44d (and 0574b5fc657451), with a fix for the failing test (by using Optional<StringRef>s instead of making StringRef::empty() mean absence of value). Differential Revision: https://reviews.llvm.org/D118070
This relands 73e585e44d (and 0574b5fc657451), with a fix for the failing test (by using Optional<StringRef>s instead of making StringRef::empty() mean absence of value). Differential Revision: https://reviews.llvm.org/D118070