https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95000
Bug ID: 95000 Summary: -fanalyzer confused by switch Product: gcc Version: 10.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: analyzer Assignee: dmalcolm at gcc dot gnu.org Reporter: felix-gcc at fefe dot de Target Milestone: --- Consider this contrived test code: void proof(char* x) { char* y=0; switch (*x) { case 'a': y="foo"; case 'b': if (*x=='a') *y='b'; } } -fanalyzer will warn about the *y='b' statement, that y might be NULL here. However if *x=='a' then we got here via the case 'a' case which initialized it. Other than this minor false positive issue thank you for -fanalyzer! It has already found a few bugs for me!