diff options
author | Zachary Turner <zturner@google.com> | 2017-10-06 20:51:20 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2017-10-06 20:51:20 +0000 |
commit | 44bde8dadb860360985164e82a6ef9f20204d16c (patch) | |
tree | 1b7a5047b9becb75addbc55d7ad73b0957671c6a /test/tools | |
parent | e14de92ad457a0db5e0cbed0fd36ff9290a75ab4 (diff) | |
download | llvm-44bde8dadb860360985164e82a6ef9f20204d16c.tar.gz |
[llvm-rc] Add optional serialization support for DIALOG(EX) resources.
This is part 5 of llvm-rc serialization support.
This allows DIALOG and DIALOGEX to serialize if dialog-specific optional
statements are provided. These are (as of now): CAPTION, FONT, and
STYLE.
Notably, FONT statement can take more than two arguments when describing
DIALOGEX resources (as in
msdn.microsoft.com/en-us/library/windows/desktop/aa381013.aspx). I made
some changes to the parser to reflect this fact.
Patch by Marek Sokolowski
Differential Revision: https://reviews.llvm.org/D37864
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315104 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/tools')
-rw-r--r-- | test/tools/llvm-rc/Inputs/parser-correct-everything.rc | 2 | ||||
-rw-r--r-- | test/tools/llvm-rc/Inputs/parser-dialog-simple-font.rc | 4 | ||||
-rw-r--r-- | test/tools/llvm-rc/Inputs/tag-dialog-bad-style.rc | 2 | ||||
-rw-r--r-- | test/tools/llvm-rc/Inputs/tag-dialog-headers.rc | 53 | ||||
-rw-r--r-- | test/tools/llvm-rc/parser.test | 7 | ||||
-rw-r--r-- | test/tools/llvm-rc/tag-dialog.test | 393 |
6 files changed, 459 insertions, 2 deletions
diff --git a/test/tools/llvm-rc/Inputs/parser-correct-everything.rc b/test/tools/llvm-rc/Inputs/parser-correct-everything.rc index 5f15bcc0944..d3d95b2e4ff 100644 --- a/test/tools/llvm-rc/Inputs/parser-correct-everything.rc +++ b/test/tools/llvm-rc/Inputs/parser-correct-everything.rc @@ -61,7 +61,7 @@ LANGUAGE 4, 1 LANGUAGE 1, 2 CHARACTERISTICS 50 VERSION 100 -FONT 12, "Arial" +FONT 12, "Arial", 500, 1, 13 CAPTION "RC parser dialog" STYLE 0x51234 BEGIN diff --git a/test/tools/llvm-rc/Inputs/parser-dialog-simple-font.rc b/test/tools/llvm-rc/Inputs/parser-dialog-simple-font.rc new file mode 100644 index 00000000000..770b31a3646 --- /dev/null +++ b/test/tools/llvm-rc/Inputs/parser-dialog-simple-font.rc @@ -0,0 +1,4 @@ +1 DIALOG 1, 2, 3, 4 +FONT 12, "Face", 100, 1, 0 +BEGIN +END diff --git a/test/tools/llvm-rc/Inputs/tag-dialog-bad-style.rc b/test/tools/llvm-rc/Inputs/tag-dialog-bad-style.rc new file mode 100644 index 00000000000..3e5f8ab959f --- /dev/null +++ b/test/tools/llvm-rc/Inputs/tag-dialog-bad-style.rc @@ -0,0 +1,2 @@ +1 DIALOG 1, 2, 3, 4 +STYLE 0xFFFF0001 {} diff --git a/test/tools/llvm-rc/Inputs/tag-dialog-headers.rc b/test/tools/llvm-rc/Inputs/tag-dialog-headers.rc new file mode 100644 index 00000000000..8007588073f --- /dev/null +++ b/test/tools/llvm-rc/Inputs/tag-dialog-headers.rc @@ -0,0 +1,53 @@ +1 DIALOGEX 1, 2, 3, 4 {} +2 DIALOG 1, 2, 3, 4 {} + +3 DIALOGEX 10000, 20000, 30000, 32767 +CAPTION "My Caption" {} +4 DIALOG -32768, 32767, 0, 32767 +CAPTION "My Caption" {} + +5 DIALOGEX 0, 1, 0, 9 +STYLE 0x01234567 {} +6 DIALOG 0, 1, 0, 9 +STYLE 0x01234567 {} + +7 DIALOGEX 8, 7, 6, 5 +FONT 50, "a" {} +8 DIALOG 8, 7, 6, 5 +FONT 50, "aaaa" {} +9 DIALOGEX 8, 7, 6, 5 +FONT 50, L"a" {} +10 DIALOG 8, 7, 6, 5 +FONT 50, L"aaaa" {} +11 DIALOGEX 1, 2, 3, 4 +FONT 50, "FONT", 51 {} +12 DIALOGEX 1, 2, 3, 4 +FONT 50, "FONT", 51, 52 {} +13 DIALOGEX 1, 2, 3, 4 +FONT 50, "FONT", 51, 52, 53 {} + +14 DIALOGEX 1, 1, 1, 1 +CAPTION "CAPTION" FONT 42, "FONT" {} +15 DIALOG 1, 1, 1, 1 +CAPTION "CAPTION" FONT 42, "FONT" {} + +16 DIALOGEX 2, 2, 2, 2 +CAPTION "CAPTION" FONT 42, "FONT" STYLE 0 {} +17 DIALOG 2, 2, 2, 2 +CAPTION "CAPTION" FONT 42, "FONT" STYLE 0 {} + +18 DIALOGEX 3, 3, 3, 3 +CAPTION "CAPTION" STYLE 0 {} +19 DIALOG 3, 3, 3, 3 +CAPTION "CAPTION" STYLE 0 {} + +20 DIALOGEX 4, 4, 4, 4 STYLE 0xFF00FF00 {} +21 DIALOG 4, 4, 4, 4 STYLE 0xFF00FF00 {} +22 DIALOGEX 4, 4, 4, 4 STYLE 0x00FF00FF {} +23 DIALOG 4, 4, 4, 4 STYLE 0x00FF00FF {} + +24 DIALOGEX 5, 5, 5, 5 CAPTION "" STYLE 0 {} +25 DIALOG 5, 5, 5, 5 CAPTION "" STYLE 0 {} + +26 DIALOGEX 1, 2, 3, 4, 5 {} + diff --git a/test/tools/llvm-rc/parser.test b/test/tools/llvm-rc/parser.test index f54311202aa..e2950776bac 100644 --- a/test/tools/llvm-rc/parser.test +++ b/test/tools/llvm-rc/parser.test @@ -53,7 +53,7 @@ ; PGOOD-NEXT: Option: Language: 1, Sublanguage: 2 ; PGOOD-NEXT: Option: Characteristics: 50 ; PGOOD-NEXT: Option: Version: 100 -; PGOOD-NEXT: Option: Font: size = 12, face = "Arial" +; PGOOD-NEXT: Option: Font: size = 12, face = "Arial", weight = 500, italic, charset = 13 ; PGOOD-NEXT: Option: Caption: "RC parser dialog" ; PGOOD-NEXT: Option: Style: 332340 ; PGOOD-NEXT: Control (14): LTEXT, title: "Hello world!", loc: (20, 20), size: [50, 50] @@ -220,6 +220,11 @@ ; PDIALOG5: llvm-rc: Error parsing file: expected '-', '~', integer or '(', got "This shouldn't be here" +; RUN: not llvm-rc /dry-run /V %p/Inputs/parser-dialog-simple-font.rc 2>&1 | FileCheck %s --check-prefix PDIALOG6 + +; PDIALOG6: llvm-rc: Error parsing file: expected identifier, got , + + ; RUN: not llvm-rc /dry-run /V %p/Inputs/parser-versioninfo-wrong-fixed.rc 2>&1 | FileCheck %s --check-prefix PVERSIONINFO1 ; PVERSIONINFO1: llvm-rc: Error parsing file: expected fixed VERSIONINFO statement type, got WEIRDFIXED diff --git a/test/tools/llvm-rc/tag-dialog.test b/test/tools/llvm-rc/tag-dialog.test index c9f7970018a..579c5d2b672 100644 --- a/test/tools/llvm-rc/tag-dialog.test +++ b/test/tools/llvm-rc/tag-dialog.test @@ -132,6 +132,393 @@ ; DIALOG-NEXT: ) +; RUN: llvm-rc /FO %t %p/Inputs/tag-dialog-headers.rc +; RUN: llvm-readobj %t | FileCheck %s --check-prefix=HEADERS + +; HEADERS: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 1 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 32 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 00008880 |................| +; HEADERS-NEXT: 0010: 00000100 02000300 04000000 00000000 |................| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 2 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 24 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 00008880 00000000 00000100 02000300 |................| +; HEADERS-NEXT: 0010: 04000000 00000000 |........| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 3 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 52 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 0000C880 |................| +; HEADERS-NEXT: 0010: 00001027 204E3075 FF7F0000 00004D00 |...' N0u......M.| +; HEADERS-NEXT: 0020: 79002000 43006100 70007400 69006F00 |y. .C.a.p.t.i.o.| +; HEADERS-NEXT: 0030: 6E000000 |n...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 4 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 44 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0000C880 00000000 00000080 FF7F0000 |................| +; HEADERS-NEXT: 0010: FF7F0000 00004D00 79002000 43006100 |......M.y. .C.a.| +; HEADERS-NEXT: 0020: 70007400 69006F00 6E000000 |p.t.i.o.n...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 5 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 32 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 27452301 |............'E#.| +; HEADERS-NEXT: 0010: 00000000 01000000 09000000 00000000 |................| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 6 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 24 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 27452301 00000000 00000000 01000000 |'E#.............| +; HEADERS-NEXT: 0010: 09000000 00000000 |........| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 7 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 42 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 40008880 |............@...| +; HEADERS-NEXT: 0010: 00000800 07000600 05000000 00000000 |................| +; HEADERS-NEXT: 0020: 32000000 00016100 0000 |2.....a...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 8 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 36 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 40008880 00000000 00000800 07000600 |@...............| +; HEADERS-NEXT: 0010: 05000000 00000000 32006100 61006100 |........2.a.a.a.| +; HEADERS-NEXT: 0020: 61000000 |a...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 9 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 42 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 40008880 |............@...| +; HEADERS-NEXT: 0010: 00000800 07000600 05000000 00000000 |................| +; HEADERS-NEXT: 0020: 32000000 00016100 0000 |2.....a...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 10 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 36 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 40008880 00000000 00000800 07000600 |@...............| +; HEADERS-NEXT: 0010: 05000000 00000000 32006100 61006100 |........2.a.a.a.| +; HEADERS-NEXT: 0020: 61000000 |a...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 11 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 48 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 40008880 |............@...| +; HEADERS-NEXT: 0010: 00000100 02000300 04000000 00000000 |................| +; HEADERS-NEXT: 0020: 32003300 00014600 4F004E00 54000000 |2.3...F.O.N.T...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 12 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 48 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 40008880 |............@...| +; HEADERS-NEXT: 0010: 00000100 02000300 04000000 00000000 |................| +; HEADERS-NEXT: 0020: 32003300 01014600 4F004E00 54000000 |2.3...F.O.N.T...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 13 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 48 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 40008880 |............@...| +; HEADERS-NEXT: 0010: 00000100 02000300 04000000 00000000 |................| +; HEADERS-NEXT: 0020: 32003300 01354600 4F004E00 54000000 |2.3..5F.O.N.T...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 14 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 62 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 4000C880 |............@...| +; HEADERS-NEXT: 0010: 00000100 01000100 01000000 00004300 |..............C.| +; HEADERS-NEXT: 0020: 41005000 54004900 4F004E00 00002A00 |A.P.T.I.O.N...*.| +; HEADERS-NEXT: 0030: 00000001 46004F00 4E005400 0000 |....F.O.N.T...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 15 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 50 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 4000C880 00000000 00000100 01000100 |@...............| +; HEADERS-NEXT: 0010: 01000000 00004300 41005000 54004900 |......C.A.P.T.I.| +; HEADERS-NEXT: 0020: 4F004E00 00002A00 46004F00 4E005400 |O.N...*.F.O.N.T.| +; HEADERS-NEXT: 0030: 0000 |..| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 16 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 62 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 4000C000 |............@...| +; HEADERS-NEXT: 0010: 00000200 02000200 02000000 00004300 |..............C.| +; HEADERS-NEXT: 0020: 41005000 54004900 4F004E00 00002A00 |A.P.T.I.O.N...*.| +; HEADERS-NEXT: 0030: 00000001 46004F00 4E005400 0000 |....F.O.N.T...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 17 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 50 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 4000C000 00000000 00000200 02000200 |@...............| +; HEADERS-NEXT: 0010: 02000000 00004300 41005000 54004900 |......C.A.P.T.I.| +; HEADERS-NEXT: 0020: 4F004E00 00002A00 46004F00 4E005400 |O.N...*.F.O.N.T.| +; HEADERS-NEXT: 0030: 0000 |..| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 18 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 46 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 0000C000 |................| +; HEADERS-NEXT: 0010: 00000300 03000300 03000000 00004300 |..............C.| +; HEADERS-NEXT: 0020: 41005000 54004900 4F004E00 0000 |A.P.T.I.O.N...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 19 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 38 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0000C000 00000000 00000300 03000300 |................| +; HEADERS-NEXT: 0010: 03000000 00004300 41005000 54004900 |......C.A.P.T.I.| +; HEADERS-NEXT: 0020: 4F004E00 0000 |O.N...| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 20 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 32 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 00FF00FF |................| +; HEADERS-NEXT: 0010: 00000400 04000400 04000000 00000000 |................| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 21 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 24 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 00FF00FF 00000000 00000400 04000400 |................| +; HEADERS-NEXT: 0010: 04000000 00000000 |........| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 22 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 32 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 BF00FF00 |................| +; HEADERS-NEXT: 0010: 00000400 04000400 04000000 00000000 |................| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 23 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 24 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: BF00FF00 00000000 00000400 04000400 |................| +; HEADERS-NEXT: 0010: 04000000 00000000 |........| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 24 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 32 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 00000000 00000000 0000C000 |................| +; HEADERS-NEXT: 0010: 00000500 05000500 05000000 00000000 |................| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 25 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 24 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0000C000 00000000 00000500 05000500 |................| +; HEADERS-NEXT: 0010: 05000000 00000000 |........| +; HEADERS-NEXT: ) + +; HEADERS-DAG: Resource type (int): 5 +; HEADERS-NEXT: Resource name (int): 26 +; HEADERS-NEXT: Data version: 0 +; HEADERS-NEXT: Memory flags: 0x1030 +; HEADERS-NEXT: Language ID: 1033 +; HEADERS-NEXT: Version (major): 0 +; HEADERS-NEXT: Version (minor): 0 +; HEADERS-NEXT: Characteristics: 0 +; HEADERS-NEXT: Data size: 32 +; HEADERS-NEXT: Data: ( +; HEADERS-NEXT: 0000: 0100FFFF 05000000 00000000 00008880 |................| +; HEADERS-NEXT: 0010: 00000100 02000300 04000000 00000000 |................| +; HEADERS-NEXT: ) + ; RUN: not llvm-rc /FO %t %p/Inputs/tag-dialog-large-coord.rc 2>&1 | FileCheck %s --check-prefix COORD1 @@ -197,3 +584,9 @@ ; CTL-REF-ID: llvm-rc: Error in DIALOGEX statement (ID 1): ; CTL-REF-ID-NEXT: Error in CTEXT control (ID 42): ; CTL-REF-ID-NEXT: Control reference ID (65536) does not fit in 16 bits. + + +; RUN: not llvm-rc /FO %t %p/Inputs/tag-dialog-bad-style.rc 2>&1 | FileCheck %s --check-prefix STYLE + +; STYLE: llvm-rc: Error in DIALOG statement (ID 1): +; STYLE-NEXT: 16 higher bits of DIALOG resource style cannot be equal to 0xFFFF |