<div dir="ltr"><div>Hello Daniel,</div><div><br></div><div>I was looking at a formatting issue with "std::function<void(int, int)> callback;". "(int, int)" is understood as a C-style cast and so the spacing follow this understanding.</div><div><br></div><div>While trying to address this, I found that the existing test for member function reference qualifier relied on the confusion. it results in inconsistent format when a name is added thought (see last 2 lines of my test function)</div><div><br></div><div>This is not really dependent on the different style, and it would seem unit test for AnnotatingParser would help when updating it.</div><div><br></div><div>Would it make sense to move AnnotatingParser in its own files and then start adding unit tests for it?</div><div><br></div><div>I would think that we would want to split the class in its .h and .cpp file.</div><div>I'd be happy to provide a patch for this, though reviewing this kind of changes is often tricky as diffs can be unhelpful, do you have any preference on how it is done?</div><div><br></div><div>The test function that shows the issues:</div><div><br></div><div>TEST_F(FormatTest, ConfigurableSpacesInParenthesesTryThings) {</div><div>  FormatStyle Spaces = getLLVMStyle();</div><div><br></div><div>  Spaces.SpacesInParentheses = true;</div><div>  verifyFormat("void function( int, int );", Spaces);</div><div>  verifyFormat("std::function<void(int, int)> callback;", Spaces); // inconsistent</div><div>  verifyFormat("#define x ( (int)-1 )", Spaces);</div><div><br></div><div>  Spaces.SpacesInParentheses = false;</div><div>  Spaces.SpacesInCStyleCastParentheses = true;</div><div>  verifyFormat("void function(int, int);", Spaces);</div><div>  verifyFormat("std::function<void( int, int )> callback;", Spaces); // inconsistent</div><div>  verifyFormat("#define x (( int )-1)", Spaces);</div><div><br></div><div>  verifyFormat("Deleted &operator=(const Deleted &)& = default;");</div><div>  verifyFormat("Deleted &operator=(const Deleted &other) & = default;"); // inconsitent</div><div>}</div><div><br></div><div>Thanks,</div><div>JP</div></div>