Esempio n. 1
0
void
init_reswords (void)
{
  unsigned int i;
  tree id;
  int mask = ((flag_no_asm ? D_ASM : 0)
	      | D_OBJC
	      | (flag_no_gnu_keywords ? D_EXT : 0));

  ridpointers = GGC_CNEWVEC (tree, (int) RID_MAX);
  for (i = 0; i < ARRAY_SIZE (reswords); i++)
    {
      id = get_identifier (reswords[i].word);
      C_RID_CODE (id) = reswords[i].rid;
      ridpointers [(int) reswords[i].rid] = id;
      if (! (reswords[i].disable & mask))
	C_IS_RESERVED_WORD (id) = 1;
    }
}
Esempio n. 2
0
void
init_reswords (void)
{
    unsigned int i;
    tree id;
    int mask = ((flag_no_asm ? D_ASM : 0)
                | D_OBJC
                | (flag_no_gnu_keywords ? D_EXT : 0));

    ridpointers = GGC_CNEWVEC (tree, (int) RID_MAX);
    for (i = 0; i < ARRAY_SIZE (reswords); i++)
    {
        id = get_identifier (reswords[i].word);
        C_RID_CODE (id) = reswords[i].rid;
        ridpointers [(int) reswords[i].rid] = id;
        if (! (reswords[i].disable & mask))
            C_IS_RESERVED_WORD (id) = 1;
    }

    /* APPLE LOCAL begin private extern  Radar 2872481 --ilr */
    /* For C++ there is always a -D__private_extern__=extern on the
       command line.  However, if -fpreprocessed was specified then
       macros are not expanded so the -D is meaningless.  But this
       replacement is required for C++.  There for we have to "pretend"
       that '__private_extern__' is 'extern' and we can do this simply by
       making the rid code for '__private_extern__' be the same as for
       extern.  Note, we probably could always do this here since
       '__private_extern__' is always to be treated like 'extern' for
       c++.  But we'll be conservative and only do it when -fpreprocessed
       is specified and depend on the macro substitution in all other
       cases.  */
    if (flag_preprocessed)
    {
        id = get_identifier ("__private_extern__");
        C_RID_CODE (id) = RID_EXTERN;
    }
    /* APPLE LOCAL end private extern  Radar 2872481 --ilr */
}