fix Issue 12979 - Nothrow violation error is hidden by inline assembler

- deprecate using unattributed asm in attributed functions

- add explicit attributes on asm statments (unverified by compiler)

  asm pure nothrow @nogc @trusted {
    //...
  }

- added new CompoundAsmStatement because the parser
  already splits asm blocks into many AsmStatements
wording of error messages
Merge pull request #4033 from MartinNowak/fix12979

fix Issue 12979 - Nothrow violation error is hidden by inline assembler