On Sunday, 1 December 2024 at 00:08:02 UTC, Richard (Rikki) Andrew Cattermole wrote:
The trick for such a function, is you have the public wrappers that sanitize the input into something that you want to work with, then internally have a function that accepts only that input.

I'm putting things out into smaller functions.
Now I have az image2D_impl() too. And 3 more. But the recursive expansion error is still there.

Now I tracked down wich specific error is that:
"%s `%s` recursive expansion"
It has 2 occurences in dmd/dsymbolsem.d

I thint it's the 2nd one.
```d
if (doSemantic3)
            tempinst.trySemantic3(sc2);

        TemplateInstance ti = tempinst.tinst;
        int nest = 0;
        while (ti && !ti.deferred && ti.tinst)
        {
            ti = ti.tinst;
            if (++nest > global.recursionLimit)
            {
global.gag = 0; // ensure error message gets printed .error(tempinst.loc, "%s `%s` recursive expansion", tempinst.kind, tempinst.toPrettyChars);
                fatal();
            }
        }
```

But how can a standard template like CommonType or isNumeric go nuts recursively? o.O

I will check them, maybe they don't like my Vector/Image structs...
  • How can I have t... realhet via Digitalmars-d-learn
    • Re: How can... realhet via Digitalmars-d-learn
      • Re: How... Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn
        • Re:... realhet via Digitalmars-d-learn
        • Re:... realhet via Digitalmars-d-learn
          • ... realhet via Digitalmars-d-learn
            • ... monkyyy via Digitalmars-d-learn
              • ... realhet via Digitalmars-d-learn

Reply via email to