[Bug preprocessor/106767] Failure to detect recursive macro calls due to _Pragma(pop_macro)

2022-08-29 Thread izbyshev at ispras dot ru via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106767 --- Comment #5 from Alexey Izbyshev --- (In reply to Richard Biener from comment #4) > Is there a public specification of the Microsoft extension and how it is > supposed to behave with recursion or is the recursion behavior specified > by the C

[Bug preprocessor/106767] Failure to detect recursive macro calls due to _Pragma(pop_macro)

2022-08-29 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106767 Richard Biener changed: What|Removed |Added CC||jsm28 at gcc dot gnu.org,

[Bug preprocessor/106767] Failure to detect recursive macro calls due to _Pragma(pop_macro)

2022-08-28 Thread izbyshev at ispras dot ru via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106767 --- Comment #3 from Alexey Izbyshev --- > I can make newer one recognize _Pragma only by unquoting the string literal I've investigated this strange behavior because MSVC docs do claim that C99 _Pragma is properly supported[1]. It turned out th

[Bug preprocessor/106767] Failure to detect recursive macro calls due to _Pragma(pop_macro)

2022-08-28 Thread izbyshev at ispras dot ru via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106767 --- Comment #2 from Alexey Izbyshev --- Old MSVC doesn't support _Pragma, and I can make newer one recognize _Pragma only by unquoting the string literal, so the first test case becomes: // Removed stringizing in _Pragma #define P(x) _Pragma(x)

[Bug preprocessor/106767] Failure to detect recursive macro calls due to _Pragma(pop_macro)

2022-08-28 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106767 --- Comment #1 from Andrew Pinski --- How does msvc handle this? Since gcc is trying to be compatible with msvc here.