dlang / ddox

Advanced D documentation engine
MIT License
63 stars 21 forks source link

{null} opIndex. Missing ')' for 'inout(' #170

Open belka-ew opened 7 years ago

belka-ew commented 7 years ago

s.d:

module mymodule;

struct S
{
    char[] storage;

    /**
     * Params:
     *  pos = Position.
     *
     * Returns: Byte at $(D_PARAM pos).
     *
     * Precondition: $(D_INLINECODE length > pos).
     */
    ref inout(char) opIndex(const size_t pos) inout pure nothrow @trusted @nogc
    {
        return this.storage[pos];
    }
}
$ dmd --version
DMD64 D Compiler v2.076.0-dirty
Copyright (c) 1999-2017 by Digital Mars written by Walter Bright

$ uname -m -r -o
4.4.75 x86_64 GNU/Linux

$ dmd -c -D -X -Xfdocs.json s.d
$ ./ddox generate-html docs.json docs
Reading doc file...
Parsing JSON...
Parsing docs...
Error parsing type 'inout(inout(char) function(const(ulong)) pure nothrow ref @nogc @trusted)': Missing ')' for 'inout('
Function mymodule.S.opIndex has non-function type: Primitive
Finished parsing docs.
Generating module: mymodule

docs/mymodule/S.opIndex.html contains now: {null} opIndex ();

ddox is 0.16.4. Seems to be the same as #111 and #94, but those were fixed a year ago.