/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
/* { dg-options { "-fasm-blocks" } } */
/* Radar 4211947 */

void foo() {
#ifdef __cplusplus
  /* This should be fixed with the recursive descent rewrite for the C
     frontend.  */
  asm
#endif
  int k;
  asm ; This is a comment
  /* This should work in C++, but the lexer runs up front and it doesn't
     have all the state we'd like to handle ; asm comments.  */
  // asm ; This is a comment to test unpaired '" characters
  int j;
  asm nop ; This is a comment
  asm nop
  ; int i;
  asm {
    ; This is a comment
    nop ; This is a comment
    nop ; bad ouch } ouch
  }
  k = i = j;
}
