https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118500
--- Comment #2 from Sam James <sjames at gcc dot gnu.org> --- With -O0/-O1, we do get -Wanalyzer-malloc-leak. It gets lost with >= -O2 unless we use noinine on my_strdup. Not sure if that's another case of PR100717 and so on (we have a bunch of bugs for attributes being lost on inlining).