/*
TEST_OUTPUT:
---
fail_compilation/parseStc2.d(11): Error: conflicting attribute 'const'
fail_compilation/parseStc2.d(12): Error: conflicting attribute '@system'
fail_compilation/parseStc2.d(13): Error: conflicting attribute '@safe'
fail_compilation/parseStc2.d(14): Error: conflicting attribute '@trusted'
fail_compilation/parseStc2.d(15): Error: conflicting attribute '__gshared'
---
*/
immutable const void f4() {}
@safe @system void f4() {}
@trusted @safe void f4() {}
@system @trusted void f4() {}
shared __gshared f4() {}

/*
TEST_OUTPUT:
---
fail_compilation/parseStc2.d(26): Error: redundant attribute 'static'
fail_compilation/parseStc2.d(27): Error: redundant attribute 'pure'
fail_compilation/parseStc2.d(28): Error: redundant attribute '@property'
fail_compilation/parseStc2.d(29): Error: redundant attribute '@safe'
---
*/
static static void f1() {}
pure nothrow pure void f2() {}
@property extern(C) @property void f3() {}
deprecated("") @safe @safe void f4() {}
@(1) @(1) void f5() {}  // OK

/*
TEST_OUTPUT:
---
fail_compilation/parseStc2.d(39): Error: redundant linkage extern (C)
fail_compilation/parseStc2.d(40): Error: conflicting linkage extern (C) and extern (C++)
---
*/
extern(C) extern(C) void f6() {}
extern(C) extern(C++) void f7() {}
extern(C++, foo) extern(C++, bar) void f8() {}  // OK

/*
TEST_OUTPUT:
---
fail_compilation/parseStc2.d(50): Error: redundant protection attribute 'public'
fail_compilation/parseStc2.d(51): Error: conflicting protection attribute 'public' and 'private'
---
*/
public public void f9() {}
public private void f10() {}

/*
TEST_OUTPUT:
---
fail_compilation/parseStc2.d(63): Error: redundant alignment attribute align
fail_compilation/parseStc2.d(64): Error: redundant alignment attribute align(1)
fail_compilation/parseStc2.d(65): Error: redundant alignment attribute align(1)
fail_compilation/parseStc2.d(66): Error: redundant alignment attribute align
fail_compilation/parseStc2.d(67): Error: redundant alignment attribute align(2)
---
*/
align    align    void f11() {}
align(1) align(1) void f12() {}
align    align(1) void f13() {}
align(1) align    void f14() {}
align(1) align(2) void f15() {}
