FreeBSD/contrib/gcc/c-parser.c
/* Main entry point to parsing most OpenMP pragmas.  */
Main entry point to parsing most OpenMP pragmas.
Main entry point to parsing most OpenMP pragmas .
static void
c_parser_omp_construct (c_parser *parser)
{
  enum pragma_kind p_kind;
  location_t loc;
  tree stmt;
  loc = c_parser_peek_token (parser)->location;
  p_kind = c_parser_peek_token (parser)->pragma_kind;
  c_parser_consume_pragma (parser);
  if (p_kind != PRAGMA_OMP_ATOMIC)
    c_maybe_initialize_eh ();
  switch (p_kind)
    {
    case PRAGMA_OMP_ATOMIC:
      c_parser_omp_atomic (parser);
      return;
    case PRAGMA_OMP_CRITICAL:
      stmt = c_parser_omp_critical (parser);
      break;
    case PRAGMA_OMP_FOR:
      stmt = c_parser_omp_for (parser);
      break;
    case PRAGMA_OMP_MASTER:
      stmt = c_parser_omp_master (parser);
      break;
    case PRAGMA_OMP_ORDERED:
      stmt = c_parser_omp_ordered (parser);
      break;
    case PRAGMA_OMP_PARALLEL:
      stmt = c_parser_omp_parallel (parser);
      break;
    case PRAGMA_OMP_SECTIONS:
      stmt = c_parser_omp_sections (parser);
      break;
    case PRAGMA_OMP_SINGLE:
      stmt = c_parser_omp_single (parser);
      break;
    default:
      gcc_unreachable ();
    }
  if (stmt)
    SET_EXPR_LOCATION (stmt, loc);
}
static void c_parser_omp_construct ( c_parser * parser ) { enum pragma_kind p_kind ; location_t loc ; tree stmt ; loc = c_parser_peek_token ( parser ) -> location ; p_kind = c_parser_peek_token ( parser ) -> pragma_kind ; c_parser_consume_pragma ( parser ) ; if ( p_kind != PRAGMA_OMP_ATOMIC ) c_maybe_initialize_eh ( ) ; switch ( p_kind ) { case PRAGMA_OMP_ATOMIC : c_parser_omp_atomic ( parser ) ; return ; case PRAGMA_OMP_CRITICAL : stmt = c_parser_omp_critical ( parser ) ; break ; case PRAGMA_OMP_FOR : stmt = c_parser_omp_for ( parser ) ; break ; case PRAGMA_OMP_MASTER : stmt = c_parser_omp_master ( parser ) ; break ; case PRAGMA_OMP_ORDERED : stmt = c_parser_omp_ordered ( parser ) ; break ; case PRAGMA_OMP_PARALLEL : stmt = c_parser_omp_parallel ( parser ) ; break ; case PRAGMA_OMP_SECTIONS : stmt = c_parser_omp_sections ( parser ) ; break ; case PRAGMA_OMP_SINGLE : stmt = c_parser_omp_single ( parser ) ; break ; default : gcc_unreachable ( ) ; } if ( stmt ) SET_EXPR_LOCATION ( stmt , loc ) ; }
Main entry point to parsing most OpenMP pragmas.
Main entry point to parsing most OpenMP pragmas .
/* For all constructs below except #pragma omp atomic
     MUST_NOT_THROW catch handlers are needed when exceptions
     are enabled.  */