<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/57334>57334</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            llvm-rc: Error parsing file: expected BLOCK or VALUE, got...
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          hmartinez82
      </td>
    </tr>
</table>

<pre>
    This was found while trying to build GIMP 3 with Clang, using Meson as the build generator. The example below is an attempt to simplify a reproducible error.

The following rc file:
```
#define _QUOTE(x) #x
#define QUOTE(x) _QUOTE(x)

#define VER_INTERNALNAME_STR        QUOTE(INTERNALNAME_STR)

STRINGTABLE
{
    1,   VER_INTERNALNAME_STR

```
Compiles correctly with `windres "--define" "INTERNALNAME_STR=\"goat-exercise\"" error.rc error.o`  when using Mingw64's windres, but fails with LLVM's:
```
$ windres "--define" "INTERNALNAME_STR=\"goat-exercise\"" error.rc error.o
llvm-rc: Error parsing file: expected '-', '~', integer or '(', got goat-exercise\
```

This is an example from the real build:
```
[98/1885] Generating extensions/goat-exercises/windows_compile_resources_0_gimp-plug-ins.rc with a custom command
FAILED: extensions/goat-exercises/719be94@@gimp_plugins_rc@cus_0_gimp-plug-ins.o
"D:\msys64\clang64\bin/windres.EXE" "--define" "ORIGINALFILENAME_STR=\"goat-exercise-c.exe\"" "--define" "INTERNALNAME_STR=\"goat-exercise\"" "--define" "TOP_SRCDIR=\"D:/Dev/Github/MINGW-packages/mingw-w64-gimp3/src/gimp3-2.99.12.r3.g02739dd6e6\"" "-ID:/Dev/Github/MINGW-packages/mingw-w64-gimp3/src/gimp3-2.99.12.r3.g02739dd6e6/." "-ID:/Dev/Github/MINGW-packages/mingw-w64-gimp3/src/build-CLANG64/." "-ID:/Dev/Github/MINGW-packages/mingw-w64-gimp3/src/gimp3-2.99.12.r3.g02739dd6e6/app" "-ID:/Dev/Github/MINGW-packages/mingw-w64-gimp3/src/build-CLANG64/app" "build/windows/gimp-plug-ins.rc" "extensions/goat-exercises/719be94@@gimp_plugins_rc@cus_0_gimp-plug-ins.o" "--preprocessor-arg=-MD" "--preprocessor-arg=-MQextensions/goat-exercises/719be94@@gimp_plugins_rc@cus_0_gimp-plug-ins.o" "--preprocessor-arg=-MFextensions/goat-exercises/719be94@@gimp_plugins_rc@cus_0_gimp-plug-ins.o.d"
llvm-rc: Error parsing file: expected BLOCK or VALUE, got goat-exercise\
```
Where the full rc file is:
```
#include <winver.h>
#include "git-version.h"

#define _QUOTE(x) #x
#define QUOTE(x) _QUOTE(x)

#define VER_COMPANYNAME_STR         "Spencer Kimball, Peter Mattis and the GIMP Development Team"

#define VER_PRODUCTVERSION          2,99,12,0
#define VER_PRODUCTVERSION_STR      "2.99.12\0"
#define VER_PRODUCTNAME_STR         "GNU Image Manipulation Program"

#define VER_FILEVERSION             2,99,12,0
#define VER_FILEVERSION_STR         "2.99.12.0\0"

#define VER_FILEDESCRIPTION_STR     "GNU Image Manipulation Program Plug-In"
#define VER_INTERNALNAME_STR        QUOTE(INTERNALNAME_STR)
#define VER_ORIGINALFILENAME_STR    QUOTE(ORIGINALFILENAME_STR)

#define VER_LEGALCOPYRIGHT_STR      "Copyright © 1995-" GIMP_GIT_LAST_COMMIT_YEAR

#ifndef DEBUG
#define VER_DEBUG                   0
#else
#define VER_DEBUG                   VS_FF_DEBUG
#endif

#ifndef GIMP_UNSTABLE
#define VER_PRERELEASE              0
#else
#define VER_PRERELEASE              VS_FF_PRERELEASE
#endif

VS_VERSION_INFO VERSIONINFO
FILEVERSION     VER_FILEVERSION
PRODUCTVERSION  VER_PRODUCTVERSION
FILEFLAGSMASK   VS_FFI_FILEFLAGSMASK
FILEFLAGS       (VER_PRERELEASE|VER_DEBUG)
FILEOS          VOS__WINDOWS32
FILETYPE        VFT_APP
FILESUBTYPE     VFT2_UNKNOWN
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904B0"
        BEGIN
            VALUE "CompanyName",      VER_COMPANYNAME_STR
            VALUE "FileDescription",  VER_FILEDESCRIPTION_STR
            VALUE "FileVersion",      VER_FILEVERSION_STR
            VALUE "InternalName",     VER_INTERNALNAME_STR
            VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR
            VALUE "ProductName",      VER_PRODUCTNAME_STR
            VALUE "ProductVersion",   VER_PRODUCTVERSION_STR
            VALUE "LegalCopyright",   VER_LEGALCOPYRIGHT_STR
        END
    END

    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x409, 1200

    END
END

#include "winuser.h"
1       ICON    "/build/windows/plug-ins.ico"
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "/build/windows/gimp.manifest"
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy9WFlzozgQ_jX4RQWFwY7Ngx8wh5caX2NwsnmiMAjMLlcJmCT767cF2AR8ZLIz2VRiC6n760N9kUPqvc2sY5ijFydHflomHno5hhFGBXkLkwAVKTqUYeShhbHaIhG9hMURKZGTBIygoDKnNCucpwkC_uKIG-oAJ5g4RUo4ZMEmfnXiDEAPOEpfEEhzgL4ocJwVVEIewmnovyEHEZyR1Cvd8ADkmBBAYHiV4eX6k4L5aQQoVDBxkQ-6MmJzyjzwzW_9KIge9sMEI_v7fmNpjDB9ZQQJwf5rn6JD0CF_L76lf9R2trG2tN1aXq7llWab1g41Pyfu_nkPDHaM9cKS50ut2Z7M6wUFGVL_oqtyTtQqumq2ksYZeCVHbkoIdovorb41IACveQROGEFg2doSWNLHCxmiyowVOAhSp2DxKyZumON6i7LUVwMXUC9SAEcQOTg5xQR8vDyMGGECoVVLpQYdygL5ThjltUrL5eOKkty-wRH6Qp0rGVH0I2aJCyogje6jzCGVCU1oQfBm4EXsgcgJC3_UDvo10ZqHMClwgAkC3mpn2uwHaYEuVLlqZhPbkBh1bpzyxSdpXGUVwU5Up9ZNV43nEgjWh9PpmBmraFFnIDUEvxY4ycM0gSvQOwrRDerf9CW33TpsbPB1WhIX5zZvB5CYbBaVARsmOfVcdWsOcsu8AM2AJXYSr1ZAl42lptYOuydvMpQOWBoxIx5-qQCbCgB8Gy5hxAP0heD0FA0CxQcvxvlbDsE1VlxaiarVIUwaY8AATvtTa4KkFzObnbEwIGZ0UPZ-3LAuB8s2en49_i4RrM3WNneKarS8lYWCruIf8LkAd5cHWKygUjyxmeP-7QSVF2OaXyxkGEtdJcJODu4Dd9MnVuAkiRsKHBG5gBcmouR5D_ihq4nxlZIEnftdcqqoZ5WlvF7QevL7gD8wwMmyrzKhha5T-pyEjVbvU64h_IKcOkVkVvVcSPg8JaxDAghFdqXeP_7-f-uj_36BnEez4ZM9YL7cKN9opX-Ul3vtU1X-6YgJrqq5X0bRaXiBin9nfgkTNyo9jBhRgRD5gQl3ZETt8hhqTliwcE49BDQnw_6fQUjZrLby-rk_B1G1zAwnLvTGb2F8cKKIOmyLC9hYwfxXNTuvckk1XkJ-wYCYxTgpkIWd-KYZVOh2t1H3igVL09iszzIRFDhFkuBjSFcXo-Ala6syyGvKAdwh30q_xnzN2MV6j4wYigFYl4RZGUH_hcl4S9KAfGAN7UcXpvycNe9Y-wqdihvftecGiKqZys7YWu-BPrQKbWlCGckNb_33GbkDc61tv4e52tbvhexSW8hLZbN9BsY_rE4IKGn2RsLgWCBGERhZQkNJGrO0PNEgtReGZS9heKdRv4L1sybvenJCPwFRSNXm-8U14dUBuvxprxdHUEc-wflo2rpudwXixAv965pVhuzX5vuXj16Qazttqcmm9lkNb3HWGrant9UEylM4G2t9g5oHum4mzW6uMLzUS4OarFcgGrLubguoL-WFuZLNbzUg1dawOwc92iZeeEjOaddwZqKc7-ochJRvY7bJCTI2pm0_GWt182SKQktlPW-1d1S6ZcvbbXts7ucnivpYgJv8tt48NcbMNciE9j2ybli0EhcEOpoOLcdI_PScrhVNl6XDxo94iR_N-Q7DDabqnmlfrNMozpzkbe3EuJo6leb8sl_cAaHqqjh3SZjRonMCulGxPgB6rNtjX5te_bwDYsCLHkmcqGfT7Xf0qygbKC4hoFCVkhbpVpm7g7St_lVSXHNxr0t9DNJ3zvU-eQdniQMnOtfODs5lse3iaGu13Tg_XInhR4f8bACf9bKIk-R1z2qU4l9HNGsVNBR4vi_rLL6nR3fagmGszKtp7KTGEJLRUGhFkSox-uVofx49Q7dVX9lpsqWBpxXNNO2VvDZ0DZrLTjM3-52i2YaKdtZ5H93CprMtBy_joY_zou3Fp4FygGfDh4ehKPKTqTTwZqIniZIzKMIiwrNfnH45jhuUJJodiyLL6xelSiH6lsS5Kcw9OpXQfMF4n_4FaPAY5nlZTe_jiSiOBscZdnw8nvjSUJqIk-F0OJYEDIvR2BtNp9JBGkTOAfrOjBnPwcQE038lAgQ1d6wOwpnAQ72aCiN-OnoQJG4sOv6DJ4x9Fxq4NBrCiwCOnTDiqB5cSoIBqW0_lEEOh1GYF3l76OR5GCQYV-IA3ymLY0pmx9ghBXS7f6bCoBI_q9T_F0D3EA8">