Home | History | Annotate | Download | only in Sema

Lines Matching defs:Use

811 /// uninitialized use of a variable.
812 static void DiagUninitUse(Sema &S, const VarDecl *VD, const UninitUse &Use,
816 switch (Use.getKind()) {
818 S.Diag(Use.getUser()->getBeginLoc(), diag::warn_uninit_var)
820 << Use.getUser()->getSourceRange();
827 << (Use.getKind() == UninitUse::AfterDecl ? 4 : 5)
830 S.Diag(Use.getUser()->getBeginLoc(), diag::note_uninit_var_use)
831 << IsCapturedByBlock << Use.getUser()->getSourceRange();
841 // Diagnose each branch which leads to a sometimes-uninitialized use.
842 for (UninitUse::branch_iterator I = Use.branch_begin(), E = Use.branch_end();
844 assert(Use.getKind() == UninitUse::Sometimes);
846 const Expr *User = Use.getUser();
929 // The use occurs if a range-based for loop's body never executes.
974 S.Diag(Use.getUser()->getBeginLoc(), diag::warn_maybe_uninit_var)
976 << Use.getUser()->getSourceRange();
981 const UninitUse &Use) {
982 S.Diag(Use.getUser()->getBeginLoc(), diag::warn_uninit_const_reference)
983 << VD->getDeclName() << Use.getUser()->getSourceRange();
989 /// emitted for particular types of uses. Returns true if the use was diagnosed
990 /// as a warning. If a particular use is one we omit warnings for, returns
993 const UninitUse &Use,
995 if (const DeclRefExpr *DRE = dyn_cast<DeclRefExpr>(Use.getUser())) {
1020 DiagUninitUse(S, VD, Use, false);
1022 const BlockExpr *BE = cast<BlockExpr>(Use.getUser());
1029 DiagUninitUse(S, VD, Use, true);
1032 // Report where the variable was declared when the use wasn't within
1419 // Sort by first use so that we emit the warnings in a deterministic order.
1430 // FIXME: Should we use a common classification enum and the same set of
1456 // properties. We can only be 100% sure of a repeated use in certain cases,
1499 for (const auto &Use : Uses) {
1500 if (Use.getUseExpr() == FirstRead)
1502 S.Diag(Use.getUseExpr()->getBeginLoc(),
1504 << Use.getUseExpr()->getSourceRange();
1552 const UninitUse &use) override {
1553 getUses(uses, vd).getPointer()->push_back(use);
1557 const UninitUse &use) override {
1558 getUses(constRefUses, vd).getPointer()->push_back(use);
1596 UninitUse Use = hasSelfInit ? UninitUse(U.getUser(), false) : U;
1598 if (DiagnoseUninitializedUse(S, vd, Use))