Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Quasar

Error in UDMF Specification: Request for revision

Recommended Posts

I have found an unintentional error in the UDMF specification that could be detrimental to some approaches at parsing:

identifier := [A-Za-z0-9_]+
This was meant to be:
identifier := [A-Za-z_]+[A-Za-z0-9_]*
This modification would require identifiers in block headers and assignment expressions to not begin with a number. Because this would be unusual in any case it is my hope that this change does not conflict with any existing implementation and can thus be accepted automatically. But I cannot just revise the UDMF spec on my own so I'm opening this to discussion with those who are interested.

Also needed to be included in the spec is the earlier agreement that identifiers and keywords are to be treated as case-insensitive. Even though this was agreed upon, it was never officially added.

Share this post


Link to post

Noted, but no action necessary in ZDoom. My parser already is case sensitive and no keyword starts with a number.

I don't think that anyone else so far has released any UDMF specs so making this change should be fine. In fact, ZDoom requires both of your alterations to successfully parse an UDMF lump. I just implicitly assumed they were there already.

Share this post


Link to post
Graf Zahl said:

Noted, but no action necessary in ZDoom. My parser already is case sensitive and no keyword starts with a number.


Eh? Sensitive, or insensitive?

Share this post


Link to post

Go ahead. I don't see any problem with it. DB2 does use numbers as identifiers when copy/pasting, which is implemented as UDMF internally, but that is kept internally only. I'll just have to add one or two lines in my DB2 code to prevent users from starting a custom field with a number.

Share this post


Link to post

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  
×