亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? c-lex.c

?? 早期freebsd實現
?? C
?? 第 1 頁 / 共 4 頁
字號:
     it and ignore it; otherwise, ignore the line, with an error     if the word isn't `pragma', `ident', `define', or `undef'.  */  if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'))    {      if (c == 'p')	{	  if (getc (finput) == 'r'	      && getc (finput) == 'a'	      && getc (finput) == 'g'	      && getc (finput) == 'm'	      && getc (finput) == 'a'	      && ((c = getc (finput)) == ' ' || c == '\t' || c == '\n'))	    {#ifdef HANDLE_SYSV_PRAGMA	      return handle_sysv_pragma (finput, c);#endif /* HANDLE_SYSV_PRAGMA */#ifdef HANDLE_PRAGMA	      HANDLE_PRAGMA (finput);#endif /* HANDLE_PRAGMA */	      goto skipline;	    }	}      else if (c == 'd')	{	  if (getc (finput) == 'e'	      && getc (finput) == 'f'	      && getc (finput) == 'i'	      && getc (finput) == 'n'	      && getc (finput) == 'e'	      && ((c = getc (finput)) == ' ' || c == '\t' || c == '\n'))	    {#ifdef DWARF_DEBUGGING_INFO	      if ((debug_info_level == DINFO_LEVEL_VERBOSE)		  && (write_symbols == DWARF_DEBUG))	        dwarfout_define (lineno, get_directive_line (finput));#endif /* DWARF_DEBUGGING_INFO */	      goto skipline;	    }	}      else if (c == 'u')	{	  if (getc (finput) == 'n'	      && getc (finput) == 'd'	      && getc (finput) == 'e'	      && getc (finput) == 'f'	      && ((c = getc (finput)) == ' ' || c == '\t' || c == '\n'))	    {#ifdef DWARF_DEBUGGING_INFO	      if ((debug_info_level == DINFO_LEVEL_VERBOSE)		  && (write_symbols == DWARF_DEBUG))	        dwarfout_undef (lineno, get_directive_line (finput));#endif /* DWARF_DEBUGGING_INFO */	      goto skipline;	    }	}      else if (c == 'l')	{	  if (getc (finput) == 'i'	      && getc (finput) == 'n'	      && getc (finput) == 'e'	      && ((c = getc (finput)) == ' ' || c == '\t'))	    goto linenum;	}      else if (c == 'i')	{	  if (getc (finput) == 'd'	      && getc (finput) == 'e'	      && getc (finput) == 'n'	      && getc (finput) == 't'	      && ((c = getc (finput)) == ' ' || c == '\t'))	    {	      /* #ident.  The pedantic warning is now in cccp.c.  */	      /* Here we have just seen `#ident '.		 A string constant should follow.  */	      while (c == ' ' || c == '\t')		c = getc (finput);	      /* If no argument, ignore the line.  */	      if (c == '\n')		return c;	      ungetc (c, finput);	      token = yylex ();	      if (token != STRING		  || TREE_CODE (yylval.ttype) != STRING_CST)		{		  error ("invalid #ident");		  goto skipline;		}	      if (!flag_no_ident)		{#ifdef ASM_OUTPUT_IDENT		  ASM_OUTPUT_IDENT (asm_out_file, TREE_STRING_POINTER (yylval.ttype));#endif		}	      /* Skip the rest of this line.  */	      goto skipline;	    }	}      error ("undefined or invalid # directive");      goto skipline;    }linenum:  /* Here we have either `#line' or `# <nonletter>'.     In either case, it should be a line number; a digit should follow.  */  while (c == ' ' || c == '\t')    c = getc (finput);  /* If the # is the only nonwhite char on the line,     just ignore it.  Check the new newline.  */  if (c == '\n')    return c;  /* Something follows the #; read a token.  */  ungetc (c, finput);  token = yylex ();  if (token == CONSTANT      && TREE_CODE (yylval.ttype) == INTEGER_CST)    {      int old_lineno = lineno;      int used_up = 0;      /* subtract one, because it is the following line that	 gets the specified number */      int l = TREE_INT_CST_LOW (yylval.ttype) - 1;      /* Is this the last nonwhite stuff on the line?  */      c = getc (finput);      while (c == ' ' || c == '\t')	c = getc (finput);      if (c == '\n')	{	  /* No more: store the line number and check following line.  */	  lineno = l;	  return c;	}      ungetc (c, finput);      /* More follows: it must be a string constant (filename).  */      /* Read the string constant, but don't treat \ as special.  */      ignore_escape_flag = 1;      token = yylex ();      ignore_escape_flag = 0;      if (token != STRING || TREE_CODE (yylval.ttype) != STRING_CST)	{	  error ("invalid #line");	  goto skipline;	}      input_filename	= (char *) permalloc (TREE_STRING_LENGTH (yylval.ttype) + 1);      strcpy (input_filename, TREE_STRING_POINTER (yylval.ttype));      lineno = l;      /* Each change of file name	 reinitializes whether we are now in a system header.  */      in_system_header = 0;      if (main_input_filename == 0)	main_input_filename = input_filename;      /* Is this the last nonwhite stuff on the line?  */      c = getc (finput);      while (c == ' ' || c == '\t')	c = getc (finput);      if (c == '\n')	return c;      ungetc (c, finput);      token = yylex ();      used_up = 0;      /* `1' after file name means entering new file.	 `2' after file name means just left a file.  */      if (token == CONSTANT	  && TREE_CODE (yylval.ttype) == INTEGER_CST)	{	  if (TREE_INT_CST_LOW (yylval.ttype) == 1)	    {	      /* Pushing to a new file.  */	      struct file_stack *p		= (struct file_stack *) xmalloc (sizeof (struct file_stack));	      input_file_stack->line = old_lineno;	      p->next = input_file_stack;	      p->name = input_filename;	      input_file_stack = p;	      input_file_stack_tick++;#ifdef DWARF_DEBUGGING_INFO	      if (debug_info_level == DINFO_LEVEL_VERBOSE		  && write_symbols == DWARF_DEBUG)		dwarfout_start_new_source_file (input_filename);#endif /* DWARF_DEBUGGING_INFO */	      used_up = 1;	    }	  else if (TREE_INT_CST_LOW (yylval.ttype) == 2)	    {	      /* Popping out of a file.  */	      if (input_file_stack->next)		{		  struct file_stack *p = input_file_stack;		  input_file_stack = p->next;		  free (p);		  input_file_stack_tick++;#ifdef DWARF_DEBUGGING_INFO		  if (debug_info_level == DINFO_LEVEL_VERBOSE		      && write_symbols == DWARF_DEBUG)		    dwarfout_resume_previous_source_file (input_file_stack->line);#endif /* DWARF_DEBUGGING_INFO */		}	      else		error ("#-lines for entering and leaving files don't match");	      used_up = 1;	    }	}      /* If we have handled a `1' or a `2',	 see if there is another number to read.  */      if (used_up)	{	  /* Is this the last nonwhite stuff on the line?  */	  c = getc (finput);	  while (c == ' ' || c == '\t')	    c = getc (finput);	  if (c == '\n')	    return c;	  ungetc (c, finput);	  token = yylex ();	  used_up = 0;	}      /* `3' after file name means this is a system header file.  */      if (token == CONSTANT	  && TREE_CODE (yylval.ttype) == INTEGER_CST	  && TREE_INT_CST_LOW (yylval.ttype) == 3)	in_system_header = 1;    }  else    error ("invalid #-line");  /* skip the rest of this line.  */ skipline:  if (c == '\n')    return c;  while ((c = getc (finput)) != EOF && c != '\n');  return c;}#ifdef HANDLE_SYSV_PRAGMA/* Handle a #pragma directive.  INPUT is the current input stream,   and C is a character to reread.  Processes the entire input line   and returns a character for the caller to reread: either \n or EOF.  *//* This function has to be in this file, in order to get at   the token types.  */inthandle_sysv_pragma (input, c)     FILE *input;     int c;{  for (;;)    {      while (c == ' ' || c == '\t')	c = getc (input);      if (c == '\n' || c == EOF)	{	  handle_pragma_token (0, 0);	  return c;	}      ungetc (c, input);      switch (yylex ())	{	case IDENTIFIER:	case TYPENAME:	case STRING:	case CONSTANT:	  handle_pragma_token (token_buffer, yylval.ttype);	  break;	default:	  handle_pragma_token (token_buffer, 0);	}      if (nextchar >= 0)	c = nextchar, nextchar = -1;      else	c = getc (input);    }}#endif /* HANDLE_SYSV_PRAGMA */#define isalnum(char) ((char >= 'a' && char <= 'z') || (char >= 'A' && char <= 'Z') || (char >= '0' && char <= '9'))#define isdigit(char) (char >= '0' && char <= '9')#define ENDFILE -1  /* token that represents end-of-file *//* Read an escape sequence, returning its equivalent as a character,   or store 1 in *ignore_ptr if it is backslash-newline.  */static intreadescape (ignore_ptr)     int *ignore_ptr;{  register int c = getc (finput);  register int code;  register unsigned count;  unsigned firstdig;  int nonnull;  switch (c)    {    case 'x':      if (warn_traditional)	warning ("the meaning of `\\x' varies with -traditional");      if (flag_traditional)	return c;      code = 0;      count = 0;      nonnull = 0;      while (1)	{	  c = getc (finput);	  if (!(c >= 'a' && c <= 'f')	      && !(c >= 'A' && c <= 'F')	      && !(c >= '0' && c <= '9'))	    {	      ungetc (c, finput);	      break;	    }	  code *= 16;	  if (c >= 'a' && c <= 'f')	    code += c - 'a' + 10;	  if (c >= 'A' && c <= 'F')	    code += c - 'A' + 10;	  if (c >= '0' && c <= '9')	    code += c - '0';	  if (code != 0 || count != 0)	    {	      if (count == 0)		firstdig = code;	      count++;	    }	  nonnull = 1;	}      if (! nonnull)	error ("\\x used with no following hex digits");      else if (count == 0)	/* Digits are all 0's.  Ok.  */	;      else if ((count - 1) * 4 >= TYPE_PRECISION (integer_type_node)	       || (count > 1		   && ((1 << (TYPE_PRECISION (integer_type_node) - (count - 1) * 4))		       <= firstdig)))	pedwarn ("hex escape out of range");      return code;    case '0':  case '1':  case '2':  case '3':  case '4':    case '5':  case '6':  case '7':      code = 0;      count = 0;      while ((c <= '7') && (c >= '0') && (count++ < 3))	{	  code = (code * 8) + (c - '0');	  c = getc (finput);	}      ungetc (c, finput);      return code;    case '\\': case '\'': case '"':      return c;    case '\n':      lineno++;      *ignore_ptr = 1;      return 0;    case 'n':      return TARGET_NEWLINE;    case 't':      return TARGET_TAB;    case 'r':      return TARGET_CR;    case 'f':      return TARGET_FF;    case 'b':      return TARGET_BS;    case 'a':      if (warn_traditional)	warning ("the meaning of `\\a' varies with -traditional");      if (flag_traditional)	return c;      return TARGET_BELL;    case 'v':#if 0 /* Vertical tab is present in common usage compilers.  */      if (flag_traditional)	return c;#endif      return TARGET_VT;    case 'e':    case 'E':      if (pedantic)	pedwarn ("non-ANSI-standard escape sequence, `\\%c'", c);      return 033;    case '?':      return c;      /* `\(', etc, are used at beginning of line to avoid confusing Emacs.  */    case '(':    case '{':    case '[':      if (pedantic)	pedwarn ("non-ANSI escape sequence `\\%c'", c);      return c;    }  if (c >= 040 && c < 0177)    pedwarn ("unknown escape sequence `\\%c'", c);  else    pedwarn ("unknown escape sequence: `\\' followed by char code 0x%x", c);  return c;}voidyyerror (string)     char *string;{  char buf[200];  strcpy (buf, string);  /* We can't print string and character constants well     because the token_buffer contains the result of processing escapes.  */  if (end_of_file)    strcat (buf, " at end of input");  else if (token_buffer[0] == 0)    strcat (buf, " at null character");  else if (token_buffer[0] == '"')    strcat (buf, " before string constant");  else if (token_buffer[0] == '\'')    strcat (buf, " before character constant");  else if (token_buffer[0] < 040 || (unsigned char) token_buffer[0] >= 0177)    sprintf (buf + strlen (buf), " before character 0%o",	     (unsigned char) token_buffer[0]);  else    strcat (buf, " before `%s'");  error (buf, token_buffer);}#if 0struct try_type{  tree *node_var;  char unsigned_flag;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
秋霞午夜鲁丝一区二区老狼| 亚洲色图视频网| 久久99精品国产麻豆不卡| 日韩一区二区三区av| 久久国产精品99久久人人澡| 久久久久久久久久久久久女国产乱 | 亚洲电影激情视频网站| 欧美精品xxxxbbbb| 九九久久精品视频| 中文字幕av一区二区三区高| 99精品国产视频| 亚洲高清免费视频| 久久久综合视频| 91欧美激情一区二区三区成人| 亚洲一区二区成人在线观看| 欧美videos大乳护士334| 岛国av在线一区| 亚洲亚洲人成综合网络| 欧美一级高清片在线观看| 国产经典欧美精品| 夜夜操天天操亚洲| 精品国产免费一区二区三区香蕉 | 91婷婷韩国欧美一区二区| 亚洲成人av一区二区| 久久精品欧美一区二区三区麻豆| 色婷婷亚洲精品| 国产剧情一区二区三区| 亚洲精品日产精品乱码不卡| 69p69国产精品| 99精品在线免费| 日本视频一区二区三区| 亚洲女性喷水在线观看一区| 久久久国产综合精品女国产盗摄| 9人人澡人人爽人人精品| 青青草原综合久久大伊人精品 | 国产亚洲精品bt天堂精选| 在线视频观看一区| 国产黄色成人av| 日本 国产 欧美色综合| 亚洲色图视频网| 久久久精品国产免大香伊| 欧美三级电影网| av资源站一区| 国产九九视频一区二区三区| 亚洲国产一区二区三区青草影视| 欧美高清在线视频| 精品少妇一区二区三区日产乱码 | 成人精品一区二区三区中文字幕 | 午夜日韩在线电影| 亚洲视频狠狠干| 久久影院午夜片一区| 欧美精品久久一区二区三区| 99久久免费精品高清特色大片| 国内精品国产三级国产a久久| 偷窥少妇高潮呻吟av久久免费| 国产精品久久久久久一区二区三区| 精品福利一二区| 精品黑人一区二区三区久久| 欧美三级视频在线| 91福利国产精品| 99久久99久久久精品齐齐| 国产成人免费在线视频| 久久精品久久久精品美女| 青青草精品视频| 青青草原综合久久大伊人精品优势| 亚洲va中文字幕| 亚洲成人一二三| 亚洲一二三专区| 亚洲成人7777| 日本不卡中文字幕| 石原莉奈一区二区三区在线观看 | 一区二区激情视频| 亚洲色图.com| 一区二区三区在线免费播放| 一区二区三区四区在线免费观看| 亚洲精品大片www| 亚洲一区二区三区四区在线免费观看 | 亚洲午夜久久久久久久久电影网| 亚洲色图在线视频| 亚洲自拍偷拍网站| 一区av在线播放| 一区二区三区在线影院| 一区二区久久久久| 亚洲成精国产精品女| 亚洲综合免费观看高清在线观看| 亚洲一区二区av电影| 麻豆成人91精品二区三区| 免费观看91视频大全| 国内精品国产三级国产a久久| 国产电影精品久久禁18| 成人免费视频网站在线观看| 99这里只有精品| 欧美性受xxxx黑人xyx性爽| 欧美日韩国产在线播放网站| 日韩欧美国产综合在线一区二区三区| 日韩精品一区二区三区四区| 久久精品夜夜夜夜久久| 中文字幕日韩精品一区| 亚洲超丰满肉感bbw| 青青国产91久久久久久| 国产精品99久久久久久有的能看| 99视频精品在线| 欧美日韩一区二区三区高清| 日韩欧美国产系列| 国产欧美一区二区三区在线老狼| 亚洲特级片在线| 日韩成人免费在线| 国产剧情一区二区| 欧美在线制服丝袜| 欧美成人精品3d动漫h| 国产精品免费av| 亚洲成人精品在线观看| 九九**精品视频免费播放| 成人高清视频免费观看| 欧美区在线观看| 欧美国产在线观看| 丝袜美腿亚洲综合| 成人短视频下载| 91麻豆精品国产无毒不卡在线观看| 国产亚洲短视频| 丝瓜av网站精品一区二区| 成人在线视频首页| 91精品国产一区二区三区香蕉| 国产欧美精品一区二区色综合| 亚洲6080在线| 99九九99九九九视频精品| 欧美成人性战久久| 亚洲一二三四久久| 福利电影一区二区三区| 88在线观看91蜜桃国自产| 国产精品久久久久影院色老大| 奇米一区二区三区| 色香蕉久久蜜桃| 欧美国产成人精品| 久久99精品一区二区三区| 欧美色图在线观看| 中文字幕一区二区三区乱码在线| 狠狠狠色丁香婷婷综合激情| 在线播放中文字幕一区| 亚洲免费观看高清完整版在线观看| 国产麻豆精品在线观看| 欧美一区二区福利在线| 亚洲成人免费视频| 欧亚洲嫩模精品一区三区| 中文字幕视频一区| 不卡av在线免费观看| 久久久777精品电影网影网| 蜜臀久久久99精品久久久久久| 在线免费观看日本一区| 亚洲欧美经典视频| 99久久精品一区| 国产精品乱人伦中文| 亚洲欧洲av一区二区三区久久| 国产精品一区免费视频| 日韩精品一区国产麻豆| 秋霞影院一区二区| 欧美一区二区视频观看视频| 亚洲成a人片在线不卡一二三区| 色综合天天做天天爱| 中文字幕一区日韩精品欧美| 风间由美中文字幕在线看视频国产欧美 | 欧美天天综合网| 一区二区在线电影| 欧美视频一区二区三区在线观看 | 日本亚洲天堂网| 91精品国产综合久久香蕉麻豆| 天天综合天天综合色| 91精品国模一区二区三区| 天天色天天操综合| 欧美老人xxxx18| 香蕉久久夜色精品国产使用方法| 欧美三级资源在线| 香蕉成人伊视频在线观看| 91 com成人网| 久久99精品网久久| 久久久91精品国产一区二区三区| 国产成人午夜视频| 欧美激情一二三区| 色噜噜狠狠色综合欧洲selulu| 一区二区三区成人在线视频| 精品视频全国免费看| 蜜臀av亚洲一区中文字幕| 日韩欧美国产午夜精品| 国产成人8x视频一区二区| √…a在线天堂一区| 欧美日韩综合在线| 男女男精品视频网| 久久精品一区二区三区不卡| 97久久人人超碰| 亚洲成人一区在线| 精品国产一区二区三区忘忧草| 成人丝袜视频网| 亚洲一区二区黄色| 337p粉嫩大胆色噜噜噜噜亚洲| 丁香五精品蜜臀久久久久99网站| 亚洲女厕所小便bbb| 欧美丰满少妇xxxxx高潮对白| 久久99这里只有精品| 国产精品成人免费| 欧美精品丝袜中出|