; RUN: rm -rf %t ; RUN: mkdir %t ; RUN: llvm-rc -no-preprocess /FO %t/tag-icon-cursor.res -- %p/Inputs/tag-icon-cursor.rc ; RUN: llvm-readobj %t/tag-icon-cursor.res | FileCheck %s ; CHECK: Resource type (int): CURSOR (ID 1) ; CHECK-NEXT: Resource name (int): 1 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 308 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 0A000B00 28000000 20000000 40000000 |....(... ...@...| ; CHECK-NEXT: 0010: 01000100 00000000 80000000 00000000 |................| ; CHECK-NEXT: 0020: 00000000 02000000 00000000 00000000 |................| ; (...) ; CHECK-DAG: 0110: FFFFFFFF FFFFFFFF FFFFFFFF F3CFFFFF |................| ; CHECK-NEXT: 0120: F3CFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |................| ; CHECK-NEXT: 0130: FFFFFFFF |....| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): GROUP_CURSOR (ID 12) ; CHECK-NEXT: Resource name (int): 4464 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1030 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 20 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 00000200 01002000 40000100 01003401 |...... .@.....4.| ; CHECK-NEXT: 0010: 00000100 |....| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): CURSOR (ID 1) ; CHECK-NEXT: Resource name (int): 2 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 2220 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 01000C00 28000000 20000000 40000000 |....(... ...@...| ; CHECK-NEXT: 0010: 01000800 00000000 00040000 00000000 |................| ; CHECK-NEXT: 0020: 00000000 00010000 00000000 00000000 |................| ; (...) ; CHECK-DAG: 0880: C001FFFF F557FFFF F557FFFF F551FFFF |.....W...W...Q..| ; CHECK-NEXT: 0890: C005FFFF B557FFFF F557FFFF F557FFFF |.....W...W...W..| ; CHECK-NEXT: 08A0: C001FFFF F557FFFF FFFFFFFF |.....W......| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): GROUP_CURSOR (ID 12) ; CHECK-NEXT: Resource name (int): 4465 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1030 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 20 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 00000200 01002000 40000100 0800AC08 |...... .@.......| ; CHECK-NEXT: 0010: 00000200 |....| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 3 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 1128 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 10000000 20000000 01002000 |(....... ..... .| ; CHECK-NEXT: 0010: 00000000 00040000 C30E0000 C30E0000 |................| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 0440: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0450: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0460: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 4 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 2440 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 18000000 30000000 01002000 |(.......0..... .| ; CHECK-NEXT: 0010: 00000000 00090000 C30E0000 C30E0000 |................| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 0960: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0970: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0980: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 5 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 4264 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 20000000 40000000 01002000 |(... ...@..... .| ; CHECK-NEXT: 0010: 00000000 00100000 C30E0000 C30E0000 |................| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 1080: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 1090: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 10A0: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 6 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 9640 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 30000000 60000000 01002000 |(...0...`..... .| ; CHECK-NEXT: 0010: 00000000 00240000 C30E0000 C30E0000 |.....$..........| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 2580: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 2590: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 25A0: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): GROUP_ICON (ID 14) ; CHECK-NEXT: Resource name (int): 100 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1030 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 62 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 00000100 04001010 00000100 20006804 |............ .h.| ; CHECK-NEXT: 0010: 00000300 18180000 01002000 88090000 |.......... .....| ; CHECK-NEXT: 0020: 04002020 00000100 2000A810 00000500 |.. .... .......| ; CHECK-NEXT: 0030: 30300000 01002000 A8250000 0600 |00.... ..%....| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): CURSOR (ID 1) ; CHECK-NEXT: Resource name (int): 7 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 4268 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 0D000600 28000000 20000000 40000000 |....(... ...@...| ; CHECK-NEXT: 0010: 01002000 00000000 00100000 00000000 |.. .............| ; CHECK-NEXT: 0020: 00000000 00000000 00000000 00000000 |................| ; (...) ; CHECK-DAG: 1080: E027FFFF C3F3FFFF FFFFFFFF FFFFFFFF |.'..............| ; CHECK-NEXT: 1090: FFFFFFFF F3CFFFFF F3CFFFFF FFFFFFFF |................| ; CHECK-NEXT: 10A0: FFFFFFFF FFFFFFFF FFFFFFFF |............| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): GROUP_CURSOR (ID 12) ; CHECK-NEXT: Resource name (int): 4466 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1030 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 20 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 00000200 01002000 40000100 2000AC10 |...... .@... ...| ; CHECK-NEXT: 0010: 00000700 |....| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 8 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 1128 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 10000000 20000000 01002000 |(....... ..... .| ; CHECK-NEXT: 0010: 00000000 00040000 C30E0000 C30E0000 |................| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 0440: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0450: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0460: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 9 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 2440 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 18000000 30000000 01002000 |(.......0..... .| ; CHECK-NEXT: 0010: 00000000 00090000 C30E0000 C30E0000 |................| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 0960: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0970: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 0980: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 10 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 4264 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 20000000 40000000 01002000 |(... ...@..... .| ; CHECK-NEXT: 0010: 00000000 00100000 C30E0000 C30E0000 |................| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 1080: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 1090: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 10A0: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 11 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 9640 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 28000000 30000000 60000000 01002000 |(...0...`..... .| ; CHECK-NEXT: 0010: 00000000 00240000 C30E0000 C30E0000 |.....$..........| ; CHECK-NEXT: 0020: 00000000 00000000 FFFFFFFF FFFFFFFF |................| ; (...) ; CHECK-DAG: 2580: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 2590: 00000000 00000000 00000000 00000000 |................| ; CHECK-NEXT: 25A0: 00000000 00000000 |........| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): GROUP_ICON (ID 14) ; CHECK-NEXT: Resource name (int): 100 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1030 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 62 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 00000100 04001010 00000100 20006804 |............ .h.| ; CHECK-NEXT: 0010: 00000800 18180000 01002000 88090000 |.......... .....| ; CHECK-NEXT: 0020: 09002020 00000100 2000A810 00000A00 |.. .... .......| ; CHECK-NEXT: 0030: 30300000 01002000 A8250000 0B00 |00.... ..%....| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): ICON (ID 3) ; CHECK-NEXT: Resource name (int): 12 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1010 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 82 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 89504E47 0D0A1A0A 0000000D 49484452 |.PNG........IHDR| ; CHECK-NEXT: 0010: 00000010 00000010 08060000 001FF3FF |................| ; CHECK-NEXT: 0020: 61000000 19494441 5438CB63 FC0F040C |a....IDAT8.c....| ; CHECK-NEXT: 0030: 1400C651 03460D18 3560B818 0000251F |...Q.F..5`....%.| ; CHECK-NEXT: 0040: 3FD1D6DC 546E0000 00004945 4E44AE42 |?...Tn....IEND.B| ; CHECK-NEXT: 0050: 6082 |`.| ; CHECK-NEXT: ) ; CHECK-DAG: Resource type (int): GROUP_ICON (ID 14) ; CHECK-NEXT: Resource name (int): 100 ; CHECK-NEXT: Data version: 0 ; CHECK-NEXT: Memory flags: 0x1030 ; CHECK-NEXT: Language ID: 1033 ; CHECK-NEXT: Version (major): 0 ; CHECK-NEXT: Version (minor): 0 ; CHECK-NEXT: Characteristics: 0 ; CHECK-NEXT: Data size: 20 ; CHECK-NEXT: Data: ( ; CHECK-NEXT: 0000: 00000100 01001010 00000100 20005200 |............ .R.| ; CHECK-NEXT: 0010: 00000C00 |....| ; CHECK-NEXT: ) ; RUN: not llvm-rc -no-preprocess /FO %t/1 -- %p/Inputs/tag-icon-cursor-nonexistent.rc 2>&1 | FileCheck %s --check-prefix NOFILE ; NOFILE: llvm-rc: Error in CURSOR statement (ID 500): ; NOFILE-NEXT: file not found : this-file-does-not-exist.cur ; RUN: not llvm-rc -no-preprocess /FO %t/1 -- %p/Inputs/tag-icon-cursor-nonsense.rc 2>&1 | FileCheck %s --check-prefix NONSENSE ; NONSENSE: llvm-rc: Error in ICON statement (ID 1): ; NONSENSE-NEXT: Incorrect icon/cursor Reserved field; should be 0.