#pragma GCC warning/error unrecognized

With 17.10:

#if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)))
#pragma GCC warning "I'm a warning"
#pragma GCC error "I'm an error"
#endif

int main(int argc, char** argv) {
  return 0;
}



$ pgc++ --display_error_number -o pb pb.cpp
"pb.cpp", line 2: warning #1675-D: unrecognized GCC pragma
  #pragma GCC warning "I'm a warning"
              ^

"pb.cpp", line 3: warning #1675-D: unrecognized GCC pragma
  #pragma GCC error "I'm an error"
              ^

They were added in GCC 4.8. I’d love to see them properly supported, but an unrecognized pragma warning is definitely wrong if__GNUC__/GNUC_MINOR is set to indicate >= 4.8.

We have logged the request for support for

#pragma GCC warning
and
#pragma GCC error

as TPR 25377.

dave

Support for #pragma GCC warning and #pragma GCC error has been added in 18.4