https://issues.dlang.org/show_bug.cgi?id=13589

--- Comment #8 from Kenji Hara <[email protected]> ---
(In reply to yebblies from comment #7)
> (In reply to Kenji Hara from comment #6)
> > 
> > void f3() @safe pure {
> >   asm {...}
> >   // f3 has explicit @safe attribute, so asm is inferred as @trusted, pure,
> > but throwable
> > }
> > 
> 
> This is a problem.  f3 is _not_ @safe, it is @trusted.  But unlike other
> violations, you won't find it by grepping for @trusted.

OK, I change the behavior in the case.

void fsafe() @safe pure {
  asm {...}  // f3 has @safe attribute, so this asm will report an error
  asm @trusted {...}  // OK
}

void ftrusted() @trusted {
  asm {...}
  // f3 has explicit @trusted attribute, so asm is inferred as @trusted
}

--

Reply via email to