================
@@ -3802,7 +3802,7 @@ static bool isFunctionDeclarationName(const LangOptions 
&LangOpts,
   const auto *Prev = Current.getPreviousNonComment();
   assert(Prev);
 
-  if (Prev->is(tok::coloncolon))
+  if (Prev->is(tok::coloncolon) && Prev->hasWhitespaceBefore())
----------------
HazardyKnusperkeks wrote:

No it is not. It's the same, just with a space in the input:
```
echo "SomeAPI::operator()();             
SomeAPI ::operator()();" | clang-format --debug-only=format-token-annotator
AnnotatedTokens(L=0, P=0, T=6, C=0):
 I=0 M=0 C=0 T=Unknown S=1 F=0 B=0 BK=0 P=0 Name=identifier N=0 L=7 PPK=2 
FakeLParens= FakeRParens=0 II=0x558d281139e0 Text='SomeAPI'
 I=0 M=0 C=0 T=Unknown S=0 F=0 B=0 BK=0 P=23 Name=coloncolon N=0 L=9 PPK=2 
FakeLParens= FakeRParens=0 II=0x0 Text='::'
 I=0 M=0 C=1 T=Unknown S=0 F=0 B=0 BK=0 P=520 Name=operator N=0 L=17 PPK=2 
FakeLParens= FakeRParens=0 II=0x558d281067c8 Text='operator'
 I=0 M=0 C=0 T=OverloadedOperator S=0 F=0 B=0 BK=0 P=23 Name=l_paren N=0 L=18 
PPK=2 FakeLParens= FakeRParens=0 II=0x0 Text='('
 I=0 M=0 C=0 T=OverloadedOperator S=0 F=0 B=0 BK=0 P=140 Name=r_paren N=1 L=19 
PPK=2 FakeLParens= FakeRParens=0 II=0x0 Text=')'
 I=0 M=0 C=0 T=OverloadedOperatorLParen S=0 F=0 B=0 BK=0 P=23 Name=l_paren N=0 
L=20 PPK=2 FakeLParens= FakeRParens=0 II=0x0 Text='('
 I=0 M=0 C=0 T=Unknown S=0 F=0 B=0 BK=0 P=140 Name=r_paren N=1 L=21 PPK=2 
FakeLParens= FakeRParens=0 II=0x0 Text=')'
 I=0 M=0 C=0 T=Unknown S=0 F=0 B=0 BK=0 P=23 Name=semi N=0 L=22 PPK=2 
FakeLParens= FakeRParens=0 II=0x0 Text=';'
----
AnnotatedTokens(L=0, P=0, T=6, C=0):
 I=0 M=0 C=0 T=Unknown S=1 F=0 B=0 BK=0 P=0 Name=identifier N=0 L=7 PPK=2 
FakeLParens= FakeRParens=0 II=0x558d281139e0 Text='SomeAPI'
 I=0 M=0 C=0 T=Unknown S=1 F=0 B=0 BK=0 P=23 Name=coloncolon N=0 L=10 PPK=2 
FakeLParens= FakeRParens=0 II=0x0 Text='::'
 I=0 M=0 C=1 T=FunctionDeclarationName S=0 F=0 B=0 BK=0 P=520 Name=operator N=0 
L=18 PPK=2 FakeLParens= FakeRParens=0 II=0x558d281067c8 Text='operator'
 I=0 M=0 C=0 T=OverloadedOperator S=0 F=0 B=0 BK=0 P=23 Name=l_paren N=0 L=19 
PPK=2 FakeLParens= FakeRParens=0 II=0x0 Text='('
 I=0 M=0 C=0 T=OverloadedOperator S=0 F=0 B=0 BK=0 P=140 Name=r_paren N=1 L=20 
PPK=2 FakeLParens= FakeRParens=0 II=0x0 Text=')'
 I=0 M=0 C=0 T=OverloadedOperatorLParen S=0 F=0 B=0 BK=0 P=23 Name=l_paren N=0 
L=21 PPK=2 FakeLParens= FakeRParens=0 II=0x0 Text='('
 I=0 M=0 C=0 T=Unknown S=0 F=0 B=0 BK=0 P=140 Name=r_paren N=1 L=22 PPK=2 
FakeLParens= FakeRParens=0 II=0x0 Text=')'
 I=0 M=0 C=0 T=Unknown S=0 F=0 B=0 BK=0 P=23 Name=semi N=0 L=23 PPK=2 
FakeLParens= FakeRParens=0 II=0x0 Text=';'
----
AnnotatedTokens(L=0, P=0, T=6, C=0):
 I=0 M=0 C=0 T=Unknown S=1 F=0 B=0 BK=0 P=0 Name=eof N=0 L=0 PPK=2 FakeLParens= 
FakeRParens=0 II=0x0 Text=''
----
SomeAPI::operator()();
SomeAPI ::operator()();

```

https://github.com/llvm/llvm-project/pull/161944
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to