On Monday, 1 August 2022 at 17:07:43 UTC, wjoe wrote:
On Monday, 1 August 2022 at 13:09:01 UTC, Kagamin wrote:
Bar.toString is typed `@system`.

Even if I'd declare everything @safe: at module scope?

I wrote that on my phone and it got a bit messy...

``` D
module x;
@safe:

struct Foo()
{
  import std.format: FormatSpec;
const void toString(scope void delegate(const(char)[]) @safe sink, FormatSpec!char fmt) {}
}

struct Bar
{
  import std.format: FormatSpec;
const void toString(scope void delegate(const(char)[]) @safe sink, FormatSpec!char fmt) {}
}

unittest {
  import std.conv:to;

  Foo!() foo; foo.to!string;
  Bar bar; bar.to!string; // 25
}
```

Reply via email to