1  /* Test for scanf formats.  Formats using extensions to the standard
       2     should be rejected in strict pedantic mode.
       3  */
       4  /* { dg-do compile { target { *-*-mingw* } } } */
       5  /* { dg-options "-std=iso9899:1999 -pedantic -Wformat" } */
       6  
       7  #define USE_SYSTEM_FORMATS
       8  #include "format.h"
       9  
      10  void
      11  foo (char **sp, wchar_t **lsp)
      12  {
      13    /* m assignment-allocation modifier, recognized in both C90
      14       and C99 modes, is a POSIX and ISO/IEC WDTR 24731-2 extension.  */
      15    scanf ("%ms", sp); /* { dg-warning "unknown|format" "%ms is unsupported" } */
      16    scanf ("%mS", lsp); /* { dg-warning "unknown|format" "%mS is unsupported" } */
      17    scanf ("%mls", lsp); /* { dg-warning "unknown|format" "%mls is unsupported" } */
      18    scanf ("%m[bcd]", sp); /* { dg-warning "unknown|format" "%m[] is unsupported" } */
      19    scanf ("%ml[bcd]", lsp); /* { dg-warning "unknown|format" "%ml[] is unsupported" } */
      20  }