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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by David Malcolm <dmalc...@gcc.gnu.org>:

https://gcc.gnu.org/g:790a8e8942b3f5a896ab5897cd209de1d9c382ae

commit r11-7156-g790a8e8942b3f5a896ab5897cd209de1d9c382ae
Author: David Malcolm <dmalc...@redhat.com>
Date:   Tue Feb 9 15:54:14 2021 -0500

    analyzer: support "_IO_"-prefixed variants of FILE * fns [PR98575]

    PR analyzer/98575 describes an unexpected -Wanalyzer-malloc-leak false
    positive from gcc.dg/analyzer/pr94851-1.c on glibc < 2.28.

    The issue is that a getchar call gets inlined into a call to _IO_getc,
    and "_IO_getc" is not in the set of FILE * functions the analyzer
    "knows about".  This exposes a bug in memory leak detection on code
    paths in which an unknown function has been called.

    The memory leak bug is fixed in the prior commit, but for good
    measure this patch special-cases the "_IO_"-prefixed names in glibc
    so that the analyzer can reuse its knowledge about the unprefixed
    variants.

    gcc/analyzer/ChangeLog:
            PR analyzer/98575
            * sm-file.cc (is_file_using_fn_p): Support "_IO_"-prefixed
            variants.

    gcc/testsuite/ChangeLog:
            PR analyzer/98575
            * gcc.dg/analyzer/file-1.c (test_5): New.
            * gcc.dg/analyzer/file-3.c: New test.

Reply via email to