diff --git a/src/dfmt/formatter.d b/src/dfmt/formatter.d index 15be43e..8236032 100644 --- a/src/dfmt/formatter.d +++ b/src/dfmt/formatter.d @@ -448,7 +448,7 @@ private: write(" "); else if (prevTokenEndLine == currTokenLine || (t == tok!")" && peekIs(tok!"{"))) write(" "); - else if (t == tok!"else") + else if (peekBackIsOneOf(false, tok!"else", tok!"identifier")) write(" "); else if (canAddNewline || (peekIs(tok!"{") && t == tok!"}")) newline(); diff --git a/tests/allman/issue0452.d.ref b/tests/allman/issue0452.d.ref new file mode 100644 index 0000000..e4aed14 --- /dev/null +++ b/tests/allman/issue0452.d.ref @@ -0,0 +1,2 @@ +@nogc // +void foo(); diff --git a/tests/issue0452.d b/tests/issue0452.d new file mode 100644 index 0000000..0ad0f5d --- /dev/null +++ b/tests/issue0452.d @@ -0,0 +1,3 @@ +@nogc +// +void foo(); diff --git a/tests/otbs/issue0452.d.ref b/tests/otbs/issue0452.d.ref new file mode 100644 index 0000000..e4aed14 --- /dev/null +++ b/tests/otbs/issue0452.d.ref @@ -0,0 +1,2 @@ +@nogc // +void foo();