D-Programming-Language/dmd — pull request #4044 by 9rnsr (2014-10-05 05:35:37+00:00)
Title: Improve parsing issues around attributes

By the strict handling of prefix attributes, we can improve situations of some parsing issues.

1. Detect more redundant/conflicting attributes around constructors and destructors, .

```d
pure this(int) pure {} // no error -> Error: redundant attributes
@safe this(this) @trusted {} // no error -> Error: conflicting attributes
```

2. Improve diagnostic for the [issue 6677](https://issues.dlang.org/show_bug.cgi?id=6677).

```d
shared pure static this() {}
// no error -> Error: use 'shared static this()' to declare a shared static constructor
```

3. Partial fix for [issue 8081](https://issues.dlang.org/show_bug.cgi?id=8081).

```d
pure nothrow unittest {}
// -> Will not appear in generated header file anymore.
```