Regression in rcparse.y

DJ Delorie dj@delorie.com
Wed Oct 11 17:39:00 GMT 2000


A more specific mailing list for this is binutils@sources.redhat.com
(I moved this there from bug-gnu-utils@gnu.org)

> causes windres to reject syntactically valid resource files.
> The first parameter to ICON must be a quoted string containing
> the resource id, not the resource id itself, as required by the
> above change.

VC98 uses a syntax that wasn't accepted before my change but is
accepted now (that's why I changed it).  The binary format for
controls specifies a resource ID or name for that parameter, not a
string (hence the other part of my change), implying that either is
accepted.  I suspect that all controls (although I only fixed ICON)
take either a string *or* a resource ID (bitmap, for example, uses the
CONTROL keyword but takes a string, except VC98 puts an id there too).

For the current source, I suggest following the id with an optcnumexpr
rather than the cnumexpr already there:

-	| ICON id cnumexpr cnumexpr cnumexpr opt_control_data
+	| ICON id optcnumexpr cnumexpr cnumexpr opt_control_data

Would this work with your resources?

> The first argument to ICON should not be an "optstringc", but a
> "stringoptc", where the quoted string is required but the following
> comma is optional.

Except that VC98 puts a number there.


More information about the Binutils mailing list