diff options
Diffstat (limited to 'clang/lib/Sema/SemaInit.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaInit.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/clang/lib/Sema/SemaInit.cpp b/clang/lib/Sema/SemaInit.cpp index 94ddd0428dc..d5378d30d5c 100644 --- a/clang/lib/Sema/SemaInit.cpp +++ b/clang/lib/Sema/SemaInit.cpp @@ -98,9 +98,6 @@ void InitListChecker::CheckImplicitInitList(InitListExpr *ParentIList, void InitListChecker::CheckExplicitInitList(InitListExpr *IList, QualType &T, unsigned &Index) { assert(IList->isExplicit() && "Illegal Implicit InitListExpr"); - if (T->isScalarType()) - SemaRef->Diag(IList->getLocStart(), diag::warn_braces_around_scalar_init, - IList->getSourceRange()); CheckListElementTypes(IList, T, Index); IList->setType(T); @@ -120,6 +117,10 @@ void InitListChecker::CheckExplicitInitList(InitListExpr *IList, QualType &T, IList->getInit(Index)->getSourceRange()); } } + + if (!hadError && T->isScalarType()) + SemaRef->Diag(IList->getLocStart(), diag::warn_braces_around_scalar_init, + IList->getSourceRange()); } void InitListChecker::CheckListElementTypes(InitListExpr *IList, |

