[PATCH] D122983: [C11/C2x] Change the behavior of the implicit function declaration warning

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 20 07:32:26 PDT 2022


aaron.ballman updated this revision to Diff 423902.
aaron.ballman added a comment.

Rebased to hopefully get precommit CI to test it.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122983/new/

https://reviews.llvm.org/D122983

Files:
  clang-tools-extra/clangd/IncludeFixer.cpp
  clang-tools-extra/clangd/ParsedAST.cpp
  clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
  clang/docs/ReleaseNotes.rst
  clang/include/clang/Basic/DiagnosticSemaKinds.td
  clang/lib/Sema/SemaDecl.cpp
  clang/lib/Sema/SemaExpr.cpp
  clang/lib/Sema/SemaLookup.cpp
  clang/test/ARCMT/objcmt-arc-cf-annotations.m
  clang/test/ARCMT/objcmt-arc-cf-annotations.m.result
  clang/test/Analysis/OSAtomic_mac.c
  clang/test/Analysis/ObjCProperties.m
  clang/test/Analysis/PR49642.c
  clang/test/Analysis/dead-stores.c
  clang/test/Analysis/diagnostics/no-store-func-path-notes.c
  clang/test/Analysis/exercise-ps.c
  clang/test/Analysis/malloc-three-arg.c
  clang/test/Analysis/misc-ps-region-store.m
  clang/test/Analysis/novoidtypecrash.c
  clang/test/Analysis/plist-macros-with-expansion.c
  clang/test/CodeGen/2002-07-14-MiscTests3.c
  clang/test/CodeGen/2002-07-31-SubregFailure.c
  clang/test/CodeGen/2003-08-18-SigSetJmp.c
  clang/test/CodeGen/2004-11-27-StaticFunctionRedeclare.c
  clang/test/CodeGen/2005-01-02-ConstantInits.c
  clang/test/CodeGen/2005-01-02-VAArgError-ICE.c
  clang/test/CodeGen/2005-02-20-AggregateSAVEEXPR.c
  clang/test/CodeGen/2006-01-13-StackSave.c
  clang/test/CodeGen/2006-03-03-MissingInitializer.c
  clang/test/CodeGen/2007-09-27-ComplexIntCompare.c
  clang/test/CodeGen/2008-05-12-TempUsedBeforeDef.c
  clang/test/CodeGen/2008-07-30-redef-of-bitcasted-decl.c
  clang/test/CodeGen/2008-08-19-cast-of-typedef.c
  clang/test/CodeGen/2008-10-13-FrontendCrash.c
  clang/test/CodeGen/2009-01-05-BlockInlining.c
  clang/test/CodeGen/PowerPC/builtins-ppc-p8vector.c
  clang/test/CodeGen/X86/bmi2-builtins.c
  clang/test/CodeGen/aarch64-mops.c
  clang/test/CodeGen/aarch64-neon-sm4-sm3.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1rq-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ldff1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ldnf1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ldnt1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_rev-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_stnt1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_trn1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_trn1-fp64-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_trn2-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_trn2-fp64-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_uzp1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_uzp1-fp64-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_uzp2-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_uzp2-fp64-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_zip1-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_zip1-fp64-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_zip2-bfloat.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_zip2-fp64-bfloat.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_aba.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_abalb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_abalt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_abdlb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_abdlt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_adalp.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_adclb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_adclt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addhnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addhnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addlb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addlbt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addlt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addp.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addwb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_addwt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_aesd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_aese.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_aesimc.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_aesmc.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_bcax.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_bdep.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_bext.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_bgrp.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_bsl.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_bsl1n.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_bsl2n.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_cadd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_cdot.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_cmla.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_cvtlt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_cvtnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_cvtx.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_cvtxnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_eor3.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_eorbt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_eortb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_hadd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_histcnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_histseg.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_hsub.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_hsubr.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_ldnt1.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_ldnt1sb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_ldnt1sh.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_ldnt1sw.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_ldnt1ub.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_ldnt1uh.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_ldnt1uw.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_logb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_match.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_maxnmp.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_maxp.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_minnmp.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_minp.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mla.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mlalb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mlalt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mls.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mlslb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mlslt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_movlb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_movlt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mul.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mullb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_mullt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_nbsl.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_nmatch.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_pmul.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_pmullb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_pmullb_128.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_pmullt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_pmullt_128.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qabs.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qadd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qcadd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmlalb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmlalbt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmlalt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmlslb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmlslbt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmlslt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmulh.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmullb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qdmullt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qneg.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrdcmlah.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrdmlah.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrdmlsh.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrdmulh.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrshl.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrshrnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrshrnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrshrunb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qrshrunt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qshl.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qshlu.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qshrnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qshrnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qshrunb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qshrunt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qsub.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qsubr.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qxtnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qxtnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qxtunb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_qxtunt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_raddhnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_raddhnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rax1.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_recpe.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rhadd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rshl.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rshr.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rshrnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rshrnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rsqrte.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rsra.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rsubhnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_rsubhnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sbclb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sbclt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_shllb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_shllt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_shrnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_shrnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sli.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sm4e.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sm4ekey.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sqadd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sra.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sri.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_stnt1.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_stnt1b.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_stnt1h.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_stnt1w.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_subhnb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_subhnt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sublb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sublbt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_sublt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_subltb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_subwb.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_subwt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbx-bfloat.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbx.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_uqadd.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilege.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilegt.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilerw-bfloat.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilerw.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilewr-bfloat.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilewr.c
  clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_xar.c
  clang/test/CodeGen/arm-microsoft-intrinsics.c
  clang/test/CodeGen/arm64-microsoft-intrinsics.c
  clang/test/CodeGen/arm_acle.c
  clang/test/CodeGen/attribute_constructor.c
  clang/test/CodeGen/bounds-checking.c
  clang/test/CodeGen/builtin-attributes.c
  clang/test/CodeGen/builtins-arm-microsoft.c
  clang/test/CodeGen/builtins-arm-msvc-compat-only.c
  clang/test/CodeGen/builtins-x86.c
  clang/test/CodeGen/builtins.c
  clang/test/CodeGen/cast-emit.c
  clang/test/CodeGen/complex-libcalls-2.c
  clang/test/CodeGen/complex-libcalls.c
  clang/test/CodeGen/conditional.c
  clang/test/CodeGen/debug-info-block-vars.c
  clang/test/CodeGen/debug-info-crash.c
  clang/test/CodeGen/decl.c
  clang/test/CodeGen/init-with-member-expr.c
  clang/test/CodeGen/libcalls.c
  clang/test/CodeGen/mandel.c
  clang/test/CodeGen/math-libcalls.c
  clang/test/CodeGen/misaligned-param.c
  (50 more files...)



More information about the cfe-commits mailing list