r269148 - Disable -Wcast-calling-convention by default (follow-up to r269116)

David Majnemer via cfe-commits cfe-commits at lists.llvm.org
Tue May 10 18:00:53 PDT 2016


Er, why? Why not just disable this warning in chromium?
Clangs diagnostics wouldn't have developed as well as they have if we took
this approach to all warnings.

On Tuesday, May 10, 2016, Hans Wennborg via cfe-commits <
cfe-commits at lists.llvm.org> wrote:

> Author: hans
> Date: Tue May 10 19:49:20 2016
> New Revision: 269148
>
> URL: http://llvm.org/viewvc/llvm-project?rev=269148&view=rev
> Log:
> Disable -Wcast-calling-convention by default (follow-up to r269116)
>
> Modified:
>     cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
>     cfe/trunk/test/Sema/callingconv-cast.c
>
> Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?rev=269148&r1=269147&r2=269148&view=diff
>
> ==============================================================================
> --- cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td (original)
> +++ cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td Tue May 10
> 19:49:20 2016
> @@ -6625,7 +6625,7 @@ def warn_function_def_in_objc_container
>  def warn_cast_calling_conv : Warning<
>    "cast between incompatible calling conventions '%0' and '%1'; "
>    "calls through this pointer may abort at runtime">,
> -  InGroup<DiagGroup<"cast-calling-convention">>;
> +  InGroup<DiagGroup<"cast-calling-convention">>, DefaultIgnore;
>  def note_change_calling_conv_fixit : Note<
>    "consider defining %0 with the '%1' calling convention">;
>  def warn_bad_function_cast : Warning<
>
> Modified: cfe/trunk/test/Sema/callingconv-cast.c
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/callingconv-cast.c?rev=269148&r1=269147&r2=269148&view=diff
>
> ==============================================================================
> --- cfe/trunk/test/Sema/callingconv-cast.c (original)
> +++ cfe/trunk/test/Sema/callingconv-cast.c Tue May 10 19:49:20 2016
> @@ -3,6 +3,9 @@
>  // RUN: %clang_cc1 -fms-extensions -triple i686-pc-windows-msvc
> -Wcast-calling-convention -DMSVC -fdiagnostics-parseable-fixits %s 2>&1 |
> FileCheck %s --check-prefix=MSFIXIT
>  // RUN: %clang_cc1 -triple i686-pc-windows-gnu -Wcast-calling-convention
> -fdiagnostics-parseable-fixits %s 2>&1 | FileCheck %s
> --check-prefix=GNUFIXIT
>
> +// Check that the warning is disabled by default:
> +// RUN: %clang_cc1 -fms-extensions -triple i686-pc-windows-msvc -DMSVC
> -Werror -Wno-pointer-bool-conversion -x c %s
> +
>  // expected-note at +1 {{consider defining 'mismatched_before_winapi' with
> the 'stdcall' calling convention}}
>  void mismatched_before_winapi(int x) {}
>
> @@ -43,12 +46,12 @@ int main() {
>    take_callback((callback_t)(void*)mismatched);
>  }
>
> -// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{16:6-16:6}:"WINAPI "
> -// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{16:6-16:6}:"WINAPI "
> -// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{16:6-16:6}:"WINAPI "
> -// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{7:6-7:6}:"__stdcall "
> -
> -// GNUFIXIT: fix-it:"{{.*}}callingconv-cast.c":{16:6-16:6}:"WINAPI "
> -// GNUFIXIT: fix-it:"{{.*}}callingconv-cast.c":{16:6-16:6}:"WINAPI "
> -// GNUFIXIT: fix-it:"{{.*}}callingconv-cast.c":{16:6-16:6}:"WINAPI "
> -// GNUFIXIT:
> fix-it:"{{.*}}callingconv-cast.c":{7:6-7:6}:"__attribute__((stdcall)) "
> +// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{19:6-19:6}:"WINAPI "
> +// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{19:6-19:6}:"WINAPI "
> +// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{19:6-19:6}:"WINAPI "
> +// MSFIXIT: fix-it:"{{.*}}callingconv-cast.c":{10:6-10:6}:"__stdcall "
> +
> +// GNUFIXIT: fix-it:"{{.*}}callingconv-cast.c":{19:6-19:6}:"WINAPI "
> +// GNUFIXIT: fix-it:"{{.*}}callingconv-cast.c":{19:6-19:6}:"WINAPI "
> +// GNUFIXIT: fix-it:"{{.*}}callingconv-cast.c":{19:6-19:6}:"WINAPI "
> +// GNUFIXIT:
> fix-it:"{{.*}}callingconv-cast.c":{10:6-10:6}:"__attribute__((stdcall)) "
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org <javascript:;>
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20160510/c305f83f/attachment.html>


More information about the cfe-commits mailing list