This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/77671] missing -Wformat-overflow warning on sprintf overflow with "%s"


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77671

Martin Sebor <msebor at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #6 from Martin Sebor <msebor at gcc dot gnu.org> ---
Author: msebor
Date: Sun May 14 17:50:28 2017
New Revision: 248035

URL: https://gcc.gnu.org/viewcvs?rev=248035&root=gcc&view=rev
Log:
PR middle-end/77671 - missing -Wformat-overflow warning on sprintf overflow
with %s

gcc/ChangeLog:

        PR middle-end/77671
        * gimple-fold.c (gimple_fold_builtin_sprintf): Make extern.
        (gimple_fold_builtin_snprintf): Same.
        * gimple-fold.h (gimple_fold_builtin_sprintf): Declare.
        (gimple_fold_builtin_snprintf): Same.
        * gimple-ssa-sprintf.c (get_format_string): Correct the detection
        of character types.
        (is_call_safe): New function.
        (try_substitute_return_value): Call it.
        (try_simplify_call): New function.
        (pass_sprintf_length::handle_gimple_call): Call it.

gcc/testsuite/ChangeLog:

PR middle-end/77671
        * gcc.dg/tree-ssa/builtin-sprintf-7.c: New test.
        * gcc.dg/tree-ssa/builtin-sprintf-8.c: New test.
        * gcc.dg/tree-ssa/builtin-sprintf-warn-1.c: Adjust.
        * gcc.dg/tree-ssa/builtin-sprintf-warn-2.c: Adjust.
        * gcc.dg/tree-ssa/builtin-sprintf-warn-3.c: Adjust.

Added:
    trunk/gcc/testsuite/gcc.dg/tree-ssa/builtin-sprintf-7.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/builtin-sprintf-8.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/gimple-fold.c
    trunk/gcc/gimple-fold.h
    trunk/gcc/gimple-ssa-sprintf.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/tree-ssa/builtin-sprintf-warn-1.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/builtin-sprintf-warn-2.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/builtin-sprintf-warn-3.c

--- Comment #7 from Martin Sebor <msebor at gcc dot gnu.org> ---
Implemented in r248035.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]