reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/Sema/SemaChecking.cpp
 7338   return FExpr->getLocationOfByte(x - Beg, S.getSourceManager(),
 7339                                   S.getLangOpts(), S.Context.getTargetInfo());
 7339                                   S.getLangOpts(), S.Context.getTargetInfo());
 7344   EmitFormatDiagnostic(S.PDiag(diag::warn_printf_incomplete_specifier),
 7362     EmitFormatDiagnostic(S.PDiag(DiagID) << LM.toString() << CS.toString(),
 7367     S.Diag(getLocationOfByte(LM.getStart()), diag::note_format_fix_specifier)
 7376     EmitFormatDiagnostic(S.PDiag(DiagID) << LM.toString() << CS.toString(),
 7395     EmitFormatDiagnostic(S.PDiag(diag::warn_format_non_standard)
 7401     S.Diag(getLocationOfByte(LM.getStart()), diag::note_format_fix_specifier)
 7406     EmitFormatDiagnostic(S.PDiag(diag::warn_format_non_standard)
 7422     EmitFormatDiagnostic(S.PDiag(diag::warn_format_non_standard)
 7429     S.Diag(getLocationOfByte(CS.getStart()), diag::note_format_fix_specifier)
 7433     EmitFormatDiagnostic(S.PDiag(diag::warn_format_non_standard)
 7443   EmitFormatDiagnostic(S.PDiag(diag::warn_format_non_standard_positional_arg),
 7452   EmitFormatDiagnostic(S.PDiag(diag::warn_format_invalid_positional_specifier)
 7460   EmitFormatDiagnostic(S.PDiag(diag::warn_format_zero_positional_specifier),
 7470       S.PDiag(diag::warn_printf_format_string_contains_null_char),
 7574       S.PDiag(diag::warn_format_invalid_conversion) << Specifier, Loc,
 7585     S.PDiag(diag::warn_format_mix_positional_nonpositional_args),
 7597       ? (S.PDiag(diag::warn_printf_positional_arg_exceeds_data_args)
 7599       : S.PDiag(diag::warn_printf_insufficient_data_args);
 7618   EmitFormatDiagnostic(S, inFunctionCall, Args[FormatIdx], PDiag,
 7758   S.Diag(getLocationOfByte(MaskType.data()), diag::err_invalid_mask_type_size);
 7769         EmitFormatDiagnostic(S.PDiag(diag::warn_printf_asterisk_missing_arg)
 7790       const analyze_printf::ArgType &AT = Amt.getArgType(S.Context);
 7793       if (!AT.matchesType(S.Context, T)) {
 7794         EmitFormatDiagnostic(S.PDiag(diag::warn_printf_asterisk_wrong_type)
 7795                                << k << AT.getRepresentativeTypeName(S.Context)
 7824   EmitFormatDiagnostic(S.PDiag(diag::warn_printf_nonsensical_optional_amount)
 7839   EmitFormatDiagnostic(S.PDiag(diag::warn_printf_nonsensical_flag)
 7855   EmitFormatDiagnostic(S.PDiag(diag::warn_printf_ignored_flag)
 7867   EmitFormatDiagnostic(S.PDiag(diag::warn_printf_empty_objc_flag),
 7878   EmitFormatDiagnostic(S.PDiag(diag::warn_printf_invalid_objc_flag) << flag,
 7889     EmitFormatDiagnostic(S.PDiag(diag) << StringRef(conversionPosition, 1),
 7949       CXXRecordMembersNamed<CXXMethodDecl>("c_str", S, E->getType());
 7955         AT.matchesType(S.Context, Method->getReturnType())) {
 7957       SourceLocation EndLoc = S.getLocForEndOfToken(E->getEndLoc());
 7958       S.Diag(E->getBeginLoc(), diag::note_printf_c_str)
 8030         ArgType(S.Context.IntTy) : ArgType::CPointerTy;
 8031     if (AT.isValid() && !AT.matchesType(S.Context, Ex->getType()))
 8033           S.PDiag(diag::warn_format_conversion_argument_type_mismatch)
 8034               << AT.getRepresentativeTypeName(S.Context) << Ex->getType()
 8042     if (AT2.isValid() && !AT2.matchesType(S.Context, Ex->getType()))
 8044           S.PDiag(diag::warn_format_conversion_argument_type_mismatch)
 8045               << AT2.getRepresentativeTypeName(S.Context) << Ex->getType()
 8068     EmitFormatDiagnostic(S.PDiag(diag::warn_os_log_format_narg),
 8088       EmitFormatDiagnostic(S.PDiag(diag::warn_format_invalid_annotation)
 8095       EmitFormatDiagnostic(S.PDiag(diag::warn_format_invalid_annotation)
 8118     EmitFormatDiagnostic(S.PDiag(diag::warn_format_P_no_precision),
 8147   if (!FS.hasValidLengthModifier(S.getASTContext().getTargetInfo(),
 8148                                  S.getLangOpts()))
 8157   if (!FS.hasStandardConversionSpecifier(S.getLangOpts()))
 8300   const analyze_printf::ArgType &AT = FS.getArgType(S.Context, isObjCContext());
 8319     EmitFormatDiagnostic(S.PDiag(diag::warn_format_bool_as_character)
 8325   analyze_printf::ArgType::MatchKind Match = AT.matchesType(S.Context, ExprTy);
 8335     if (isArithmeticArgumentPromotion(S, ICE)) {
 8342       if (ICE->getType() == S.Context.IntTy ||
 8343           ICE->getType() == S.Context.UnsignedIntTy) {
 8346             AT.matchesType(S.Context, ExprTy);
 8358     if (ExprTy == S.Context.IntTy)
 8359       if (llvm::isUIntN(S.Context.getCharWidth(), CL->getValue()))
 8360         ExprTy = S.Context.CharTy;
 8380       IntendedTy = S.Context.UnsignedShortTy;
 8386         if (V.getActiveBits() <= S.Context.getTypeSize(IntendedTy))
 8390       LookupResult Result(S, &S.Context.Idents.get("unichar"), E->getBeginLoc(),
 8390       LookupResult Result(S, &S.Context.Idents.get("unichar"), E->getBeginLoc(),
 8392       if (S.LookupName(Result, S.getCurScope())) {
 8392       if (S.LookupName(Result, S.getCurScope())) {
 8396             IntendedTy = S.Context.getTypedefType(TD);
 8404   if (S.Context.getTargetInfo().getTriple().isOSDarwin()) {
 8406     std::tie(CastTy, CastTyName) = shouldNotPrintDirectly(S.Context, IntendedTy, E);
 8412           AT.matchesType(S.Context, CastTy))
 8422       fixedFS.fixType(IntendedTy, S.getLangOpts(), S.Context, isObjCContext());
 8422       fixedFS.fixType(IntendedTy, S.getLangOpts(), S.Context, isObjCContext());
 8449       EmitFormatDiagnostic(S.PDiag(Diag)
 8450                                << AT.getRepresentativeTypeName(S.Context)
 8466       IntendedTy.print(CastFix, S.Context.getPrintingPolicy());
 8470       if (!AT.matchesType(S.Context, IntendedTy) || ShouldNotPrintDirectly)
 8489         SourceLocation After = S.getLocForEndOfToken(E->getEndLoc());
 8505         EmitFormatDiagnostic(S.PDiag(Diag) << Name << IntendedTy << IsEnum
 8514             S.PDiag(diag::warn_format_conversion_argument_type_mismatch)
 8515                 << AT.getRepresentativeTypeName(S.Context) << ExprTy << IsEnum
 8526     switch (S.isValidVarArgType(ExprTy)) {
 8544           S.PDiag(Diag) << AT.getRepresentativeTypeName(S.Context) << ExprTy
 8544           S.PDiag(Diag) << AT.getRepresentativeTypeName(S.Context) << ExprTy
 8551       EmitFormatDiagnostic(S.PDiag(diag::warn_non_pod_vararg_with_format_string)
 8552                                << S.getLangOpts().CPlusPlus11 << ExprTy
 8554                                << AT.getRepresentativeTypeName(S.Context) << CSR
 8563             S.PDiag(diag::err_cannot_pass_objc_interface_to_vararg_format)
 8564                 << S.getLangOpts().CPlusPlus11 << ExprTy << CallType
 8565                 << AT.getRepresentativeTypeName(S.Context) << CSR
 8571         S.Diag(E->getBeginLoc(), diag::err_cannot_pass_to_vararg_format)
 8573             << AT.getRepresentativeTypeName(S.Context) << E->getSourceRange();
 8620   EmitFormatDiagnostic(S.PDiag(diag::warn_scanf_scanlist_incomplete),
 8667       EmitFormatDiagnostic(S.PDiag(diag::warn_scanf_nonzero_width),
 8690   if (!FS.hasValidLengthModifier(S.getASTContext().getTargetInfo(),
 8691                                  S.getLangOpts()))
 8700   if (!FS.hasStandardConversionSpecifier(S.getLangOpts()))
 8715   const analyze_format_string::ArgType &AT = FS.getArgType(S.Context);
 8722       AT.matchesType(S.Context, Ex->getType());
 8729                                  S.getLangOpts(), S.Context);
 8729                                  S.getLangOpts(), S.Context);
 8742         S.PDiag(Diag) << AT.getRepresentativeTypeName(S.Context)
 8742         S.PDiag(Diag) << AT.getRepresentativeTypeName(S.Context)
 8750     EmitFormatDiagnostic(S.PDiag(Diag)
 8751                              << AT.getRepresentativeTypeName(S.Context)