forked from OSchip/llvm-project
clang-format: Allow unbroken ::: in inline assembly.
Before: asm volatile("nop" :: : "memory"); After: asm volatile("nop" ::: "memory"); Patch by Eugene Toder. Thank you. llvm-svn: 217883
This commit is contained in:
parent
eef9f4dc74
commit
b23e20b7f5
|
@ -1653,6 +1653,8 @@ bool TokenAnnotator::spaceRequiredBefore(const AnnotatedLine &Line,
|
|||
return !Line.First->isOneOf(tok::kw_case, tok::kw_default) &&
|
||||
Tok.getNextNonComment() && Tok.Type != TT_ObjCMethodExpr &&
|
||||
!Tok.Previous->is(tok::question) &&
|
||||
!(Tok.Type == TT_InlineASMColon &&
|
||||
Tok.Previous->is(tok::coloncolon)) &&
|
||||
(Tok.Type != TT_DictLiteral || Style.SpacesInContainerLiterals);
|
||||
if (Tok.Previous->Type == TT_UnaryOperator)
|
||||
return Tok.Type == TT_BinaryOperator;
|
||||
|
|
|
@ -2105,6 +2105,7 @@ TEST_F(FormatTest, FormatsExternC) { verifyFormat("extern \"C\" {\nint a;"); }
|
|||
|
||||
TEST_F(FormatTest, FormatsInlineASM) {
|
||||
verifyFormat("asm(\"xyz\" : \"=a\"(a), \"=d\"(b) : \"a\"(data));");
|
||||
verifyFormat("asm(\"nop\" ::: \"memory\");");
|
||||
verifyFormat(
|
||||
"asm(\"movq\\t%%rbx, %%rsi\\n\\t\"\n"
|
||||
" \"cpuid\\n\\t\"\n"
|
||||
|
|
Loading…
Reference in New Issue