Pug не даёт вам совершить ошибку - блочный элемент нельзя вкладывать в инлайновый (строчный).
Нужно поведение как у блочного элемента внутри строчного - задавайте ему тип через стили.
<a href="/" class="link">
<span>Link text</span>
</a>
.link span {
display: block;
}
UPD:
Как я стар... Внезапно, HTML5 этого не запрещает и это не считается ошибкой. Раньше нельзя было.
Но ИМХО, это как с определением рода слова "кофе" - по нынешним меркам можно и в мужском, и в среднем, но тем не менее в приличном обществе "кофе" в среднем роде услышать сложно.
Новый ответ на вопрос (bemto
позволяет делать так):
+b.A.test(href="#")
+e.DIV.content