[Issue 601] New: statement.html - Formatting/markup errors in BNF

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Nov 26 01:26:52 PST 2006


http://d.puremagic.com/issues/show_bug.cgi?id=601

           Summary: statement.html - Formatting/markup errors in BNF
           Product: D
           Version: 0.175
          Platform: All
               URL: http://www.digitalmars.com/d/statement.html
        OS/Version: All
            Status: NEW
          Severity: minor
          Priority: P2
         Component: www.digitalmars.com
        AssignedTo: bugzilla at digitalmars.com
        ReportedBy: smjg at iname.com


There are a few errors and inconsistencies in how the BNF in the spec is
formatted, which are noticeable on the Statements page.

1. British and American spellings are mixed, even in multiple occurrences of
the same syntactic element.  This instance should suffice to illustrate:

NonEmptyStatement:
    LabeledStatement
    [...]

LabelledStatement:
    Identifier ':' NoScopeStatement


2. While still on the subject of Label(l)edStatement, no other bit of BNF in
the D spec (that I've found) has a token delimited by single quotes.  They
shouldn't be here either.


3.
DefaultStatement:
    default: Statement

There should be a space between "default" and ":" to reflect that they are two
separate tokens.  More trivial are instances in ForStatement, where the omitted
spaces separate a token from a nonterminal:

ForStatement:
    for (Initialize Test; Increment) ScopeStatement

versus

    for ( Initialize Test ; Increment ) ScopeStatement


4.
ForeachStatement:
    Foreach (ForeachTypeList; Aggregate) NoScopeNonEmptyStatement

has, in addition to the same imperfection as the above, the open parenthesis in
italics instead of bold.


5. Many of the link targets are malformed, for example:

<pre class="bnf"><a name=#Statement><i>Statement</i></a>:

Firstly, this is syntactically invalid HTML - '#' isn't one of the characters
that may be included in an attribute value without quotes.  But that's an aside
- target names shouldn't have the '#' at all.  The '#' comes into play only in
URLs and hrefs.  Consequently, several of the links between parts of the page
don't work.


-- 




More information about the Digitalmars-d-bugs mailing list