1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00

[llvm-rc] Allow omitting components from VERSIONINFO versions

MS rc.exe doesn't require specifying all 4 components.

Differential Revision: https://reviews.llvm.org/D87570
This commit is contained in:
Martin Storsjö 2020-09-13 00:24:26 +03:00
parent 3b2eea568d
commit 50a529e27d
3 changed files with 4 additions and 2 deletions

View File

@ -14,7 +14,7 @@
; CHECK-NEXT: 0000: A0023400 00005600 53005F00 56004500 |..4...V.S._.V.E.| ; CHECK-NEXT: 0000: A0023400 00005600 53005F00 56004500 |..4...V.S._.V.E.|
; CHECK-NEXT: 0010: 52005300 49004F00 4E005F00 49004E00 |R.S.I.O.N._.I.N.| ; CHECK-NEXT: 0010: 52005300 49004F00 4E005F00 49004E00 |R.S.I.O.N._.I.N.|
; CHECK-NEXT: 0020: 46004F00 00000000 BD04EFFE 00000100 |F.O.............| ; CHECK-NEXT: 0020: 46004F00 00000000 BD04EFFE 00000100 |F.O.............|
; CHECK-NEXT: 0030: 02000100 04000300 06000500 08000700 |................| ; CHECK-NEXT: 0030: 02000100 04000300 06000500 00000700 |................|
; CHECK-NEXT: 0040: 32000000 2B020000 6E000000 237A0800 |2...+...n...#z..| ; CHECK-NEXT: 0040: 32000000 2B020000 6E000000 237A0800 |2...+...n...#z..|
; CHECK-NEXT: 0050: 0E000000 00000000 00000000 00020000 |................| ; CHECK-NEXT: 0050: 0E000000 00000000 00000000 00020000 |................|
; CHECK-NEXT: 0060: 01005300 74007200 69006E00 67004600 |..S.t.r.i.n.g.F.| ; CHECK-NEXT: 0060: 01005300 74007200 69006E00 67004600 |..S.t.r.i.n.g.F.|

View File

@ -777,8 +777,10 @@ RCParser::parseVersionInfoFixed() {
// VERSION variations take multiple integers. // VERSION variations take multiple integers.
size_t NumInts = RetType::isVersionType(FixedType) ? 4 : 1; size_t NumInts = RetType::isVersionType(FixedType) ? 4 : 1;
ASSIGN_OR_RETURN(ArgsResult, readIntsWithCommas(NumInts, NumInts)); ASSIGN_OR_RETURN(ArgsResult, readIntsWithCommas(1, NumInts));
SmallVector<uint32_t, 4> ArgInts(ArgsResult->begin(), ArgsResult->end()); SmallVector<uint32_t, 4> ArgInts(ArgsResult->begin(), ArgsResult->end());
while (ArgInts.size() < NumInts)
ArgInts.push_back(0);
Result.setValue(FixedType, ArgInts); Result.setValue(FixedType, ArgInts);
} }