@@ -15760,6 +15760,8 @@ TEST_F(FormatTest, OperatorSpacing) {
15760
15760
verifyFormat("Foo::operator*();", Style);
15761
15761
verifyFormat("Foo::operator void *();", Style);
15762
15762
verifyFormat("Foo::operator void **();", Style);
15763
+ verifyFormat("Foo::operator void *&();", Style);
15764
+ verifyFormat("Foo::operator void *&&();", Style);
15763
15765
verifyFormat("Foo::operator()(void *);", Style);
15764
15766
verifyFormat("Foo::operator*(void *);", Style);
15765
15767
verifyFormat("Foo::operator*();", Style);
@@ -15773,6 +15775,10 @@ TEST_F(FormatTest, OperatorSpacing) {
15773
15775
verifyFormat("Foo::operator<Foo> &();", Style);
15774
15776
verifyFormat("Foo::operator<int> &&();", Style);
15775
15777
verifyFormat("Foo::operator<Foo> &&();", Style);
15778
+ verifyFormat("Foo::operator<int> *&();", Style);
15779
+ verifyFormat("Foo::operator<Foo> *&();", Style);
15780
+ verifyFormat("Foo::operator<int> *&&();", Style);
15781
+ verifyFormat("Foo::operator<Foo> *&&();", Style);
15776
15782
verifyFormat("operator*(int (*)(), class Foo);", Style);
15777
15783
15778
15784
verifyFormat("Foo::operator&();", Style);
@@ -15796,12 +15802,15 @@ TEST_F(FormatTest, OperatorSpacing) {
15796
15802
verifyFormat("operator const FooRight<Object> &()", Style);
15797
15803
verifyFormat("operator const FooRight<Object> *()", Style);
15798
15804
verifyFormat("operator const FooRight<Object> **()", Style);
15805
+ verifyFormat("operator const FooRight<Object> *&()", Style);
15806
+ verifyFormat("operator const FooRight<Object> *&&()", Style);
15799
15807
15800
15808
Style.PointerAlignment = FormatStyle::PAS_Left;
15801
15809
verifyFormat("Foo::operator*();", Style);
15802
15810
verifyFormat("Foo::operator**();", Style);
15803
15811
verifyFormat("Foo::operator void*();", Style);
15804
15812
verifyFormat("Foo::operator void**();", Style);
15813
+ verifyFormat("Foo::operator void*&();", Style);
15805
15814
verifyFormat("Foo::operator/*comment*/ void*();", Style);
15806
15815
verifyFormat("Foo::operator/*a*/ const /*b*/ void*();", Style);
15807
15816
verifyFormat("Foo::operator/*a*/ volatile /*b*/ void*();", Style);
@@ -15812,10 +15821,13 @@ TEST_F(FormatTest, OperatorSpacing) {
15812
15821
verifyFormat("Foo::operator<Foo>*();", Style);
15813
15822
verifyFormat("Foo::operator<int>**();", Style);
15814
15823
verifyFormat("Foo::operator<Foo>**();", Style);
15824
+ verifyFormat("Foo::operator<Foo>*&();", Style);
15815
15825
verifyFormat("Foo::operator<int>&();", Style);
15816
15826
verifyFormat("Foo::operator<Foo>&();", Style);
15817
15827
verifyFormat("Foo::operator<int>&&();", Style);
15818
15828
verifyFormat("Foo::operator<Foo>&&();", Style);
15829
+ verifyFormat("Foo::operator<int>*&();", Style);
15830
+ verifyFormat("Foo::operator<Foo>*&();", Style);
15819
15831
verifyFormat("operator*(int (*)(), class Foo);", Style);
15820
15832
15821
15833
verifyFormat("Foo::operator&();", Style);
@@ -15844,6 +15856,8 @@ TEST_F(FormatTest, OperatorSpacing) {
15844
15856
verifyFormat("operator const FooLeft<Object>&()", Style);
15845
15857
verifyFormat("operator const FooLeft<Object>*()", Style);
15846
15858
verifyFormat("operator const FooLeft<Object>**()", Style);
15859
+ verifyFormat("operator const FooLeft<Object>*&()", Style);
15860
+ verifyFormat("operator const FooLeft<Object>*&&()", Style);
15847
15861
15848
15862
// PR45107
15849
15863
verifyFormat("operator Vector<String>&();", Style);
0 commit comments