From 687e5fa936f5211c542397990ed74ce0d328edb3 Mon Sep 17 00:00:00 2001 From: Ben Hamilton Date: Thu, 14 Dec 2017 16:17:38 +0000 Subject: [ClangFormat] IndentWrappedFunctionNames should be true in the google ObjC style Summary: If we write the following code, it goes over 100 columns, so we need to wrap it: ``` - (VeryLongReturnTypeName)veryLongMethodParameter:(VeryLongParameterName)thisIsAVeryLongParameterName longMethodParameter:(LongParameterName)thisIsAlsoAnotherLongParameterName; ``` Currently, clang-format with the google style aligns the method parameter names on the first column: ``` - (VeryLongReturnTypeName) veryLongMethodParameter:(VeryLongParameterName)thisIsAVeryLongParameterName longMethodParameter:(LongParameterName)thisIsAlsoAnotherLongParameterName; ``` We'd like clang-format in the google style to align these to column 4 for Objective-C: ``` - (VeryLongReturnTypeName) veryLongMethodParameter:(VeryLongParameterName)thisIsAVeryLongParameterName longMethodParameter:(LongParameterName)thisIsAlsoAnotherLongParameterName; ``` Test Plan: make -j12 FormatTests && ./tools/clang/unittests/Format/FormatTests Reviewers: krasimir, djasper, klimek Reviewed By: djasper Subscribers: cfe-commits, thakis Differential Revision: https://reviews.llvm.org/D41195 llvm-svn: 320714 --- clang/unittests/Format/FormatTestObjC.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'clang/unittests/Format/FormatTestObjC.cpp') diff --git a/clang/unittests/Format/FormatTestObjC.cpp b/clang/unittests/Format/FormatTestObjC.cpp index 4220b44b4c4..292466c0aa5 100644 --- a/clang/unittests/Format/FormatTestObjC.cpp +++ b/clang/unittests/Format/FormatTestObjC.cpp @@ -382,9 +382,9 @@ TEST_F(FormatTestObjC, FormatObjCMethodDeclarations) { " ofSize:(size_t)height\n" " :(size_t)width;"); + Style = getGoogleStyle(FormatStyle::LK_ObjC); // Continuation indent width should win over aligning colons if the function // name is long. - Style = getGoogleStyle(FormatStyle::LK_ObjC); Style.ColumnLimit = 40; Style.IndentWrappedFunctionNames = true; verifyFormat("- (void)shortf:(GTMFoo *)theFoo\n" @@ -395,7 +395,10 @@ TEST_F(FormatTestObjC, FormatObjCMethodDeclarations) { verifyFormat("- (void)shortf:(GTMFoo *)theFoo\n" " aShortf:(NSRect)theRect {\n" "}"); - + // Wrapped method parameters should be indented. + verifyFormat("- (LongReturnTypeName)\n" + " longParam:(ParamName)longParamName\n" + " param:(paramName)paramName;"); // Format pairs correctly. Style.ColumnLimit = 80; verifyFormat("- (void)drawRectOn:(id)surface\n" -- cgit v1.2.3