summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2010-12-12 08:51:33 +0000
committerChandler Carruth <chandlerc@gmail.com>2010-12-12 08:51:33 +0000
commit5184de0aff61b2931dacfb6385cedc9e0a86ae35 (patch)
tree981a789ba5d4cac419ad53bd927198c5749835b1 /clang/lib
parent9de23cdb45e56c4708e91111100d0fe1f28e50d8 (diff)
downloadbcm5719-llvm-5184de0aff61b2931dacfb6385cedc9e0a86ae35.tar.gz
bcm5719-llvm-5184de0aff61b2931dacfb6385cedc9e0a86ae35.zip
Reorder the cases in the switch to be more logically grouped (to my mind). If
others have another ordering they would prefer, I'm all ears, but this one made it much easier for me to find the group of operators I'm interested in. llvm-svn: 121629
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Sema/SemaOverload.cpp68
1 files changed, 34 insertions, 34 deletions
diff --git a/clang/lib/Sema/SemaOverload.cpp b/clang/lib/Sema/SemaOverload.cpp
index 7d4507d7f10..69f48d69a8c 100644
--- a/clang/lib/Sema/SemaOverload.cpp
+++ b/clang/lib/Sema/SemaOverload.cpp
@@ -5539,11 +5539,19 @@ Sema::AddBuiltinOperatorCandidates(OverloadedOperatorKind Op,
assert(false && "Expected an overloaded operator");
break;
- case OO_Star: // '*' is either unary or binary
- if (NumArgs == 1)
- OpBuilder.addUnaryStarPointerOverloads();
- else
- OpBuilder.addGenericBinaryArithmeticOverloads(/*isComparison=*/false);
+ case OO_New:
+ case OO_Delete:
+ case OO_Array_New:
+ case OO_Array_Delete:
+ case OO_Call:
+ assert(false && "Special operators don't use AddBuiltinOperatorCandidates");
+ break;
+
+ case OO_Comma:
+ case OO_Arrow:
+ // C++ [over.match.oper]p3:
+ // -- For the operator ',', the unary operator '&', or the
+ // operator '->', the built-in candidates set is empty.
break;
case OO_Plus: // '+' is either unary or binary
@@ -5560,14 +5568,15 @@ Sema::AddBuiltinOperatorCandidates(OverloadedOperatorKind Op,
}
break;
- case OO_Amp: // '&' is either unary or binary
+ case OO_Star: // '*' is either unary or binary
if (NumArgs == 1)
- // C++ [over.match.oper]p3:
- // -- For the operator ',', the unary operator '&', or the
- // operator '->', the built-in candidates set is empty.
- break;
+ OpBuilder.addUnaryStarPointerOverloads();
+ else
+ OpBuilder.addGenericBinaryArithmeticOverloads(/*isComparison=*/false);
+ break;
- OpBuilder.addBinaryBitwiseArithmeticOverloads(Op);
+ case OO_Slash:
+ OpBuilder.addGenericBinaryArithmeticOverloads(/*isComparison=*/false);
break;
case OO_PlusPlus:
@@ -5576,25 +5585,6 @@ Sema::AddBuiltinOperatorCandidates(OverloadedOperatorKind Op,
OpBuilder.addPlusPlusMinusMinusPointerOverloads();
break;
- case OO_Tilde:
- OpBuilder.addUnaryTildePromotedIntegralOverloads();
- break;
-
- case OO_New:
- case OO_Delete:
- case OO_Array_New:
- case OO_Array_Delete:
- case OO_Call:
- assert(false && "Special operators don't use AddBuiltinOperatorCandidates");
- break;
-
- case OO_Comma:
- case OO_Arrow:
- // C++ [over.match.oper]p3:
- // -- For the operator ',', the unary operator '&', or the
- // operator '->', the built-in candidates set is empty.
- break;
-
case OO_EqualEqual:
case OO_ExclaimEqual:
OpBuilder.addEqualEqualOrNotEqualMemberPointerOverloads();
@@ -5609,10 +5599,6 @@ Sema::AddBuiltinOperatorCandidates(OverloadedOperatorKind Op,
OpBuilder.addGenericBinaryArithmeticOverloads(/*isComparison=*/true);
break;
- case OO_Slash:
- OpBuilder.addGenericBinaryArithmeticOverloads(/*isComparison=*/false);
- break;
-
case OO_Percent:
case OO_Caret:
case OO_Pipe:
@@ -5621,6 +5607,20 @@ Sema::AddBuiltinOperatorCandidates(OverloadedOperatorKind Op,
OpBuilder.addBinaryBitwiseArithmeticOverloads(Op);
break;
+ case OO_Amp: // '&' is either unary or binary
+ if (NumArgs == 1)
+ // C++ [over.match.oper]p3:
+ // -- For the operator ',', the unary operator '&', or the
+ // operator '->', the built-in candidates set is empty.
+ break;
+
+ OpBuilder.addBinaryBitwiseArithmeticOverloads(Op);
+ break;
+
+ case OO_Tilde:
+ OpBuilder.addUnaryTildePromotedIntegralOverloads();
+ break;
+
case OO_Equal:
OpBuilder.addAssignmentMemberPointerOrEnumeralOverloads();
// Fall through.
OpenPOWER on IntegriCloud