[clang] 04336ad - [clang-format] No space inserted between commas in C#
Jonathan Coe via cfe-commits
cfe-commits at lists.llvm.org
Mon Mar 23 10:20:15 PDT 2020
Author: Jonathan Coe
Date: 2020-03-23T17:17:27Z
New Revision: 04336ada1756fea6ae0a6d86bd2d6bd35cdd19ad
URL: https://github.com/llvm/llvm-project/commit/04336ada1756fea6ae0a6d86bd2d6bd35cdd19ad
DIFF: https://github.com/llvm/llvm-project/commit/04336ada1756fea6ae0a6d86bd2d6bd35cdd19ad.diff
LOG: [clang-format] No space inserted between commas in C#
Reviewers: krasimir
Reviewed By: krasimir
Subscribers: cfe-commits, MyDeveloperDay
Tags: #clang-format, #clang
Differential Revision: https://reviews.llvm.org/D76621
Added:
Modified:
clang/lib/Format/TokenAnnotator.cpp
clang/unittests/Format/FormatTestCSharp.cpp
Removed:
################################################################################
diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp
index 685749fc31ab..f2666a8bd171 100644
--- a/clang/lib/Format/TokenAnnotator.cpp
+++ b/clang/lib/Format/TokenAnnotator.cpp
@@ -3015,6 +3015,10 @@ bool TokenAnnotator::spaceRequiredBefore(const AnnotatedLine &Line,
if (Right.is(TT_CSharpNullConditionalLSquare))
return false;
+ // No space between consecutive commas '[,,]'.
+ if (Left.is(tok::comma) && Right.is(tok::comma))
+ return false;
+
// Possible space inside `?[ 0 ]`.
if (Left.is(TT_CSharpNullConditionalLSquare))
return Style.SpacesInSquareBrackets;
diff --git a/clang/unittests/Format/FormatTestCSharp.cpp b/clang/unittests/Format/FormatTestCSharp.cpp
index 0b770b4dfd3c..17b8e070c36a 100644
--- a/clang/unittests/Format/FormatTestCSharp.cpp
+++ b/clang/unittests/Format/FormatTestCSharp.cpp
@@ -640,9 +640,12 @@ TEST_F(FormatTestCSharp, CSharpSpaces) {
verifyFormat(R"(private float[,] Values;)", Style);
verifyFormat(R"(Result this[Index x] => Foo(x);)", Style);
+ verifyFormat(R"(char[,,] rawCharArray = MakeCharacterGrid();)", Style);
+
Style.SpacesInSquareBrackets = true;
verifyFormat(R"(private float[ , ] Values;)", Style);
verifyFormat(R"(string dirPath = args?[ 0 ];)", Style);
+ verifyFormat(R"(char[ ,, ] rawCharArray = MakeCharacterGrid();)", Style);
}
TEST_F(FormatTestCSharp, CSharpNullableTypes) {
More information about the cfe-commits
mailing list