================
@@ -15277,35 +15351,33 @@ static void CheckImplicitConversion(Sema &S, Expr *E, 
QualType T,
       }
 }
 
-static void CheckConditionalOperator(Sema &S, AbstractConditionalOperator *E,
-                                     SourceLocation CC, QualType T);
-
-static void CheckConditionalOperand(Sema &S, Expr *E, QualType T,
-                                    SourceLocation CC, bool &ICContext) {
+void ImplicitConversionChecker::CheckConditionalOperand(Expr *E, QualType T,
+                                                        SourceLocation CC,
+                                                        bool &ICContext) {
   E = E->IgnoreParenImpCasts();
   // Diagnose incomplete type for second or third operand in C.
   if (!S.getLangOpts().CPlusPlus && E->getType()->isRecordType())
     S.RequireCompleteExprType(E, diag::err_incomplete_type);
 
   if (auto *CO = dyn_cast<AbstractConditionalOperator>(E))
-    return CheckConditionalOperator(S, CO, CC, T);
+    return CheckConditionalOperator(CO, CC, T);
 
-  AnalyzeImplicitConversions(S, E, CC);
+  AnalyzeImplicitConversions(E, CC, false, true);
----------------
shafik wrote:

```suggestion
  AnalyzeImplicitConversions(E, CC,  /*IsInitList=*/false, 
/*IsTopLevelExpr=*/true);
```

https://github.com/llvm/llvm-project/pull/65684
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to