https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71402
--- Comment #11 from Manuel López-Ibáñez <lopezibanez at gmail dot com> --- 5.3 has the bug I mentioned above. It makes the pragmas believe that, for this warning, the location is at the end of the file, which is after the pop. Perhaps you can trick gcc by placing another pragma ignored at the end of the file. But that will silence all warnings that suffer from this bug.