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

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

?? main.c

?? 非常好的源碼
?? C
字號:
#include "c.h"
#include <io.h>
#include <fcntl.h>
#include <stdio.h>
#include <time.h>
#include <signal.h>
int mmx = 0;
FILE *AssemblerFile;
static void compile ARGS((char *));
static int doargs ARGS((int, char **));
static void emitYYnull ARGS((void));
static void typestab ARGS((Symbol, void *));
static void globaltab(Symbol p, void *cl);
static void statictab(Symbol p, void *cl);
static void CreateXrefFile(char *name);
extern void SetFastCompile(Interface *);
extern int atoi(char *);
#ifndef _S_IWRITE
#define _S_IWRITE 0x200
#endif
Interface *IR = NULL;
FILE *xrefFile;
char *xrefFileName = NULL;
char *ilFileName = NULL;
FILE *ilFile;
static char *infile, *outfile;
int outputLine = 1;             // whether to output #line or just # in cpp
int verbose = 0;
int Aflag = 0;                  /* >= 0 if -A specified */
int Pflag;                      /* != 0 if -P specified */
int Xflag = 1;                  /* != 0 if -X specified to permit
								extensions */
int glevel = 0;                 /* == [0-9] if -g[0-9] specified */
int xref = 0;                   /* != 0 for cross-reference data */
Symbol YYnull;                  /* _YYnull  symbol if -n or -nvalidate
								specified */
Symbol YYcheck;                 /* _YYcheck symbol if -nvalidate,check
								specified */
int AddUnderscore = 1;			/* True if we decorate with '_' symbols */
int Savedargc;
int trapuv=0;
char **Savedargv;
int GenerateAsm = 0;
int GenerateCpp = 0;
int DoLineDirective = 1;
int IntermediateLanguageFile;
int OptimizeFlag = 0;
clock_t AsmTime = 0, CppTime = 0;
static int IsAssemblerFile(char *fname)
{
	char *p;
	p = strrchr(fname, '.');
	if (p == NULL)
		return (0);
	p++;
	if (*p != 'a' && *p != 'A')
		return (0);
	p++;
	if (*p != 's' && *p != 'S')
		return (0);
	p++;
	if (*p != 'm' && *p != 'M')
		return (0);
	p++;
	if (*p)
		return (0);
	return (1);
}
static char *suffix(char *infile, char *s)
{
	char *outfile;
	char *p = strrchr(infile, '\\');
	if (p)
		p++;
	else
		p = infile;
	outfile = malloc(strlen(p) + 10);
	memset(outfile, 0, strlen(p) + 10);
	strcpy(outfile, p);
	p = strrchr(outfile, '.');
	if (p)
		*p = 0;
	strcat(outfile, s);
	return outfile;
}
void AssembleFile(char *fname)
{
	FILE *f;
	char *buffer;
	int s;
	f = fopen(fname, "r");
	if (f == NULL) {
		printf(StrTab[0], fname);   // <Impossible to open %s\n>
		return;
	}
	glevel = 0;
	AsmInit(fname);
	buffer = malloc(4097);
	while (!feof(f)) {
		s = fread(buffer, 1, 4096, f);
		buffer[4096] = 0;
		AsmReadBuffer(buffer, s);
	}
	free(buffer);
	AsmReadBuffer("", 0);
	WriteCoffFile();
}
typedef int (_stdcall *HANDLER)(unsigned long);
extern int _stdcall SetConsoleCtrlHandler(HANDLER, int b);
extern char *OutputFileName;
int _stdcall CtrlHandler(unsigned long event)
{
	printf(StrTab[1], OutputFileName);  // <lcc: break. Erasing %s\n>
	unlink(OutputFileName);
	exit(1);
	return 0;
}
#if defined(__LCC__) && __LCCDEBUGLEVEL < 3
/* When using the stack trace facility we do not want to trap anything,
   to see the stack trace!
*/
static void trap(int sig)
{
	fatal("", StrTab[2], 0);    // <Trap signal received. Compilation aborts\n>
}
#endif
extern long CharsRead;
extern int _stdcall GetLastError(void);
extern int NrOfSpills;
extern int Mflag;
char *InputFileName;
char *CommandLine;
extern void Usage(void);
int main(int argc, char *argv[])
{
	int i, len;
	clock_t t0, t1;
	FILE *outf;
	char namebuf[256];
	extern int ReadTime;
	t0 = clock();
#if defined(__LCC__) && __LCCDEBUGLEVEL < 3
	signal(SIGSEGV, trap);
#endif
	IR = bindings[0].ir;
	Savedargc = argc;
	len = 0;
	Savedargv = (char **) malloc(argc * sizeof(char *));
	CommandLine = (char *) malloc(1024);
	CommandLine[0] = 0;
	for (i = 0; i < argc; i++) {
		len += 1 + strlen(argv[i]);
		if (len < 1024) {
			strcat(CommandLine, argv[i]);
			strcat(CommandLine, " ");
		}
		Savedargv[i] = malloc(len);
		strcpy(Savedargv[i], argv[i]);
	}
	CppInit();
	if (argc == 1) {
		Usage();
	}
	argc = doargs(argc, argv);
	if (infile == NULL) {
		printf(StrTab[3]);	// <no input files>
		exit(1);
	}
	SetConsoleCtrlHandler( CtrlHandler, 1);
	if (IntermediateLanguageFile && infile) {
		ilFileName = suffix(infile, ".lil");
		ilFile = fopen(ilFileName, "w");
	}
	if (IsAssemblerFile(infile)) {
		GenerateAsm = 0;
		AssembleFile(infile);
		goto doexit;
	}
	InputFileName = infile;
	StartCpp(infile);
	if (GenerateCpp) {
		char *p = strrchr(infile, '\\');
		unsigned char *buffer;
		if (p)
			p++;
		else
			p = infile;
		if (OutputFileName == NULL) {
			outfile = malloc(strlen(p) + 10);
			memset(outfile, 0, strlen(p) + 10);
			strcpy(outfile, p);
			p = strrchr(outfile, '.');
			if (p)
				*p = 0;
			strcat(outfile, ".i");
		}
		else {
			outfile = OutputFileName;
		}
		outf = fopen(outfile, "w");
		if (outf == NULL) {
			fprint(2, StrTab[4],// <%s: can't write `%s'\n>
				argv[0], outfile);
			exit(1);
		}
		buffer = malloc(16000);
		while ((i = ReadFromCpp(buffer, 16000)) != 0) {
			fwrite(buffer, i, 1, outf);
		}
		fclose(outf);
		free(buffer);
		t1 = clock();
		if (verbose)
		printf(StrTab[5], (double) (t1 - t0) / 1000.0); // <Cpp time: %g sec.\n>
		SetConsoleCtrlHandler( CtrlHandler, 0);
		return (0);
	}
	AsmInit(infile);
	typeInit();
	if (outfile == NULL) {
		if (GenerateAsm && infile) {
			outfile = suffix(infile, ".asm");
		}
		else if (GenerateAsm)
			outfile = tmpnam(NULL);
	}
	if (GenerateAsm && outfile) {
		AssemblerFile = fopen(outfile, "w");
		if (AssemblerFile == NULL) {
			printf(StrTab[6],   // <%s: can't write `%s: error %d'\n>
				argv[0], outfile, GetLastError());
			exit(1);
		}
	}
	if (xref) {
		CreateXrefFile(xrefFileName);
	}
	inputInit();
	outputInit();
	if (errfd != 2) {
		sprintf(namebuf, "%s:\n", infile);
		write(errfd, namebuf, strlen(namebuf));
	}
	t = gettok();
	(*IR->progbeg) (argc, argv);
	if (IR->stabinit)
		(*IR->stabinit) (firstfile, argc, argv);
	program();
	if (glevel > 0) {
		EmitDefinesInfo();
	}
	if (events.end)
		apply(events.end, NULL, NULL);
	memset(&events, 0, sizeof events);
	emitYYnull();
	CheckStaticUses();
	if (xref && xrefFile) {
		Symbol symroot = NULL;
		Coordinate src;
		foreach(types, GLOBAL, typestab, &symroot);
		foreach(identifiers, GLOBAL, typestab, &symroot);
		foreach(globals, GLOBAL, globaltab, &symroot);
		foreach(globals, GLOBAL, statictab, &symroot);
		src.file = firstfile;
		src.x = 0;
		src.y = lineno;
		if (IR->stabend)
			(*IR->stabend) (&src, symroot,
							ltov(&loci, PERM),
							ltov(&symbols, PERM), NULL);
		DumpDefines();
		DumpDefinedFunctions();
		fclose(xrefFile);
	}
	finalize();
	(*IR->progend) ();
	BuildExportTable();
	outflush();
	deallocate(PERM);
	AsmReadBuffer("", 0);
	if (IntermediateLanguageFile)
		fclose(ilFile);
	if (errcnt == 0 && Mflag == 0)
		WriteCoffFile();
	t1 = clock();
	if (verbose)
		printf(StrTab[7],       // <Spills:%d Chars read: %d,Memory used:%d,Time = %g sec.\n>
			NrOfSpills, CharsRead, memused, (double) (t1 - t0) / 1000.0);
	if (errcnt > 0 || warningCount > 0) {
		printf(StrTab[8], errcnt, warningCount);    // <%d errors, %d warnings\n>
	}
doexit:
	if (GenerateAsm)
		fclose(AssemblerFile);
	fflush(stdout);
	if (outfd)
		close(outfd);
	if (errfd)
		close(errfd);
	SetConsoleCtrlHandler( CtrlHandler, 0);
	return errcnt > 0;
}
/* compile - compile str */
static void compile(char *str)
{
	inputstring(str);
	t = gettok();
	program();
}
extern int dotokfile;
extern int TraceDependencies;
extern void DoCmdLineDirective(char *, int);
extern void CmdLineAddInclude(char *);
static void CreateXrefFile(char *name)
{
	char *p, tmpfName[256], *q;
	if (xrefFile)
		return;
	if (*name) {
		if (!strcmp(infile, name)) {
			fprintf(stderr, StrTab[9],  // <Clobbering input file %s with xref file %s?\n>
					infile, name);
			return;
		}
		xrefFile = fopen(name, "w");
	}
	p = strrchr(infile, '.');
	if (p) {
		*p = 0;
		q = strrchr(infile, '\\');
		if (q)
			q++;
		else
			q = infile;
		sprintf(tmpfName, "%s.xrf", q);
		*p = '.';
		xrefFile = fopen(tmpfName, "w");
	}
	if (xrefFile) {
		fprintf(xrefFile, "F %s\n", infile);
		AddToFileTable(infile);
	}
}
/* doargs - process program arguments, removing top-half arguments from argv */
static int doargs(int argc, char *argv[])
{
	int i, result;
	result = -1;
	for (i = 1; i < argc; i++) {
		if (argv[i][0] == '/')
			argv[i][0] = '-';
		if (strcmp(argv[i], "-g") == 0)
			glevel = 2;
		else if (strncmp(argv[i], "-g", 2) == 0
				&& argv[i][2] && argv[i][2] >= '0' && argv[i][2] <= '9') {
			glevel = argv[i][2] - '0';
			/* if (glevel >= 4) IR->stabinit = cdbstabinit; */
		}
		else if (strncmp(argv[i], "-x", 2) == 0) {
			xref++;
			xrefFileName = &argv[i][2];
		}
		else if (strncmp(argv[i], "-Fo", 3) == 0 || strncmp(argv[i],"-FO",3) == 0) {
			char *p = argv[i] + 3;
			OutputFileName = malloc(strlen(p) + 1);
			strcpy(OutputFileName, p);
			if (*OutputFileName == 0 || *OutputFileName == ' ') {
				fprintf(stderr, StrTab[10]);    // <Option error: /Fo needs an argument\n>
				exit(1);
			}
		}
		else if (strcmp(argv[i], "-A") == 0) {
			if (++Aflag >= 2)
				Xflag = 0;
		}
		else if (strncmp(argv[i], "-D", 2) == 0) {
			DoCmdLineDirective(argv[i] + 2, 'D');
		}
		else if (strncmp(argv[i], "-U", 2) == 0) {
			DoCmdLineDirective(argv[i] + 2, 'U');
		}
		else if (strncmp(argv[i], "-M", 2) == 0) {
			Mflag = 1;
			if (argv[i][2])
				Mflag++;
			TraceDependencies = 1;
		}
		else if (strncmp(argv[i], "-I", 2) == 0) {
			CmdLineAddInclude(argv[i] + 2);
		}
		else if (strcmp(argv[i], "-z") == 0) {
			IntermediateLanguageFile = 1;
		}
		else if (strncmp(argv[i], "-Zp", 3) == 0) {
			int da = atoi(argv[i] + 3);
			if (da == 1 || da == 2 || da == 4 || da == 8 || da == 16) {
				DefaultAlignment = da;
			}
			else
				printf(StrTab[427], da);    // <Invalid alignment %d ignored\n>
		}
		else if (strncmp(argv[i], "-O", 2) == 0) {
			OptimizeFlag = 1;
		}
		else if (!strcmp(argv[i],"-trapuv")) {
			trapuv = 1;
		}
		else if (strcmp(argv[i], "-T") == 0) {
			dotokfile = 1;
		}
		else if (strcmp(argv[i], "-X") == 0)
			Xflag++;
		else if (strcmp(argv[i], "-P") == 0)
			Pflag++;
		else if (strcmp(argv[i], "-w") == 0)
			wflag++;
		else if (strcmp(argv[i], "-b") == 0
				|| strcmp(argv[i], "-C") == 0
				|| strncmp(argv[i], "-a", 2) == 0)
			profInit(argv[i]);
		else if (strcmp(argv[i], "-n") == 0) {
			if (!YYnull) {
				YYnull = install(string("_YYnull"), &globals, GLOBAL, PERM);
				YYnull->type = ftype(voidtype, inttype);
				YYnull->sclass = STATIC;
				(*IR->defsymbol) (YYnull);
			}
		}
		else if (strncmp(argv[i], "-n", 2) == 0) {  /* -nvalid[,check] */
			char *p = strchr(argv[i], ',');
			if (p) {
				YYcheck = install(string(p + 1), &globals, GLOBAL, PERM);
				YYcheck->type = func(voidptype, NULL, 1);
				YYcheck->sclass = EXTERN;
				(*IR->defsymbol) (YYcheck);
				p = stringn(argv[i] + 2, p - (argv[i] + 2));
			}
			else
				p = string(argv[i] + 2);
			YYnull = install(p, &globals, GLOBAL, PERM);
			YYnull->type = func(voidptype, NULL, 1);
			YYnull->sclass = EXTERN;
			(*IR->defsymbol) (YYnull);
		}
		else if (strncmp(argv[i], "-target=", 8) == 0);
		else if (strncmp(argv[i], "-t", 2) == 0)
			traceInit(&argv[i][2]);
		else if (strcmp(argv[i], "-v") == 0) {
			verbose = 1;
		}
		else if (strncmp(argv[i], "-s", 2) == 0) {
			if (argv[i][2] >= '0' && argv[i][2] <= '9')
				density = (float) strtod(&argv[i][2], NULL);
			else
				fprint(2,StrTab[428],argv[i]); // <Incorrect argument %s\n>
		}
		else if (strncmp(argv[i], "-errout=", 8) == 0) {
			char *errfile = argv[i] + 8;
			{
				errfd = open(errfile, (_O_WRONLY | _O_APPEND | _O_CREAT), _S_IWRITE);
				if (errfd < 0) {
					errfd = 2;
					fprint(2, "%s: can't write errors to `%s'\n", argv[0], errfile);
					exit(1);
				}
			}
		}
		else if (strncmp(argv[i], "-S", 2) == 0) {
			GenerateAsm = 1;
		}
		else if (strncmp(argv[i], "-e", 2) == 0) {
			int x;
			if ((x = strtol(&argv[i][2], NULL, 0)) > 0)
				errlimit = x;
		}
		else if (strncmp(argv[i], "-E", 2) == 0) {
			GenerateCpp = 1;
			if (argv[i][2] == '+')
				outputLine = 0;
			if (argv[i][2] == 'P')
				DoLineDirective = 0;
		}
		else if (!stricmp(argv[i],"nounderscore")) {
			AddUnderscore = 0;
		}
		else {
			result = i;
			infile = argv[i];
		}
	}
	if (glevel >= 2 && OptimizeFlag == 0)
		trapuv = 1;
	return result;
}
/* emitYYnull - compile definition for _YYnull, if it's referenced and named "_YYnull" */
static void emitYYnull()
{
	if (YYnull && YYnull->ref > 0.0
			&& strcmp(YYnull->name, "_YYnull") == 0) {
		Aflag = 0;
		YYnull->defined = 0;
		YYnull = NULL;
		compile(stringf("static char *_YYfile = \"%s\";\n", file));
		compile("static void _YYnull(int line,...) {\nchar buf[200];\nsprintf(buf, \"null pointer dereferenced @%s:%d\\n\", _YYfile, line);\nwrite(2, buf, strlen(buf));\nabort();\n}\n");
	}
}
/* typestab - emit stab entries for p */
static void typestab(Symbol p, void *cl)
{
	if (*(Symbol *) cl == 0 && p->sclass && p->sclass != TYPEDEF)
		*(Symbol *) cl = p;
	if ((p->sclass == TYPEDEF || p->sclass == 0) && IR->stabtype)
		(*IR->stabtype) (p);
}
static void globaltab(Symbol p, void *cl)
{
	if (p->scope == GLOBAL && p->sclass != STATIC) {
		if (p->type->op != FUNCTION && p->ref != 0.0)
			fprintf(xrefFile, "E %s %d\n", p->name, p->src.y);
	}
}
static void statictab(Symbol p, void *cl)
{
	if (p->sclass == STATIC) {
		if (p->type->op != FUNCTION && p->ref != 0.0)
			fprintf(xrefFile, "S %s %d\n", p->name, p->src.y);
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲第一福利视频在线| 亚洲午夜视频在线观看| 欧美男人的天堂一二区| 日韩欧美国产麻豆| 国产日产欧产精品推荐色 | av综合在线播放| 色综合天天综合给合国产| 欧美伦理影视网| 欧美精品一区二区三| 日韩理论片网站| 看片的网站亚洲| 色婷婷久久一区二区三区麻豆| 欧美日韩dvd在线观看| 国产亚洲欧美中文| 中文字幕一区二区三区四区| 午夜视频在线观看一区二区| 成人app下载| 精品va天堂亚洲国产| 亚洲精品免费看| 国产一区不卡在线| 在线播放中文一区| 一区二区高清免费观看影视大全 | 久久精品视频一区| 亚洲午夜一二三区视频| 成人性生交大片免费看视频在线 | 一区二区视频在线| 日韩国产在线一| 色综合天天综合给合国产| 久久精品免费在线观看| 日韩成人av影视| 91国偷自产一区二区三区观看| 精品国产电影一区二区| 婷婷久久综合九色综合绿巨人| 成人av免费在线播放| 亚洲精品在线一区二区| 男男成人高潮片免费网站| 欧美色老头old∨ideo| 国产女人18水真多18精品一级做| 久久精品国产澳门| 在线播放中文一区| 偷拍一区二区三区| 欧美丝袜丝nylons| 亚洲综合免费观看高清在线观看| 成人app网站| 久久在线免费观看| 国产在线精品一区二区夜色| 欧美一区二区二区| 五月天国产精品| 欧美色倩网站大全免费| 亚洲一本大道在线| 欧美系列日韩一区| 亚洲午夜激情av| 欧美日韩国产区一| 午夜精品国产更新| 色婷婷久久久亚洲一区二区三区 | 国产精品91一区二区| 欧美tickling网站挠脚心| 蜜桃免费网站一区二区三区 | 99精品一区二区三区| 久久久综合九色合综国产精品| 久久国产精品72免费观看| 日韩丝袜情趣美女图片| 看电视剧不卡顿的网站| 欧美tk丨vk视频| 国产精品主播直播| 中文字幕av资源一区| 97se狠狠狠综合亚洲狠狠| 亚洲美女区一区| 91视频一区二区三区| 亚洲国产精品成人综合色在线婷婷| 国产白丝精品91爽爽久久| 国产精品乱码一区二区三区软件| 不卡影院免费观看| 一区二区三区高清| 日韩精品一区二区三区视频| 国产宾馆实践打屁股91| 亚洲国产精品二十页| 97久久超碰国产精品| 五月激情综合网| 国产午夜精品理论片a级大结局 | 国产精品456| 亚洲欧洲日韩女同| 欧美美女直播网站| 韩国成人精品a∨在线观看| ...xxx性欧美| 欧美亚洲尤物久久| 黄色日韩三级电影| 一区二区三区四区视频精品免费| 9久草视频在线视频精品| 香蕉影视欧美成人| 中文字幕高清不卡| 日韩午夜在线播放| 色先锋资源久久综合| 美国精品在线观看| 国产天堂亚洲国产碰碰| 欧美日韩一级二级| 成人ar影院免费观看视频| 午夜亚洲国产au精品一区二区 | 久久国产精品色| 免费高清视频精品| 中文字幕中文乱码欧美一区二区 | 蜜臀精品一区二区三区在线观看 | 久久久无码精品亚洲日韩按摩| 91美女视频网站| 亚洲成av人**亚洲成av**| 久久免费视频色| 欧美精品久久99久久在免费线| 成人avav影音| 免费高清视频精品| 亚洲一区二区欧美日韩| 久久久91精品国产一区二区精品| 欧美精选午夜久久久乱码6080| 99精品视频一区| 国产河南妇女毛片精品久久久 | 国产精品一色哟哟哟| 日韩精品免费视频人成| 一区二区在线观看视频在线观看| 国产片一区二区| 精品国产一区二区三区不卡| 欧美精品久久天天躁| 欧美中文字幕久久| 成人h动漫精品| 精品无码三级在线观看视频| 日本免费新一区视频| 亚洲国产成人av| 亚洲国产综合视频在线观看| 亚洲素人一区二区| 亚洲天堂a在线| 国产精品不卡一区二区三区| 国产精品区一区二区三区| 3d动漫精品啪啪1区2区免费 | 91在线看国产| 国产精品一二一区| 狠狠色丁香婷婷综合| 国产一区二区三区四区在线观看 | 国产999精品久久| 狠狠色综合色综合网络| 老司机精品视频线观看86| 日本午夜一本久久久综合| 免费亚洲电影在线| 国模大尺度一区二区三区| 国产一区欧美一区| 国产一区二区三区四区五区入口| 日本不卡视频一二三区| 蜜桃av一区二区| 国产精品乡下勾搭老头1| 不卡一区中文字幕| 91精品国产综合久久香蕉的特点| 国产午夜精品在线观看| 亚洲免费在线视频一区 二区| 日韩高清在线电影| 国产91精品久久久久久久网曝门| 色国产精品一区在线观看| 欧美日韩夫妻久久| 久久精品人人做人人爽97| 亚洲一区视频在线| 国产成人午夜精品影院观看视频 | 午夜精品久久久久久| 国产精品一区二区男女羞羞无遮挡 | 成人精品国产免费网站| 欧美性受xxxx| 欧美国产精品一区| 美女视频黄免费的久久| 色综合久久精品| 国产欧美久久久精品影院| 丝袜诱惑制服诱惑色一区在线观看| 国产成人aaa| 精品国免费一区二区三区| 一区二区三区日韩欧美精品| 国产乱一区二区| 制服丝袜av成人在线看| 亚洲欧美国产毛片在线| 国产专区综合网| 欧美一区二区三区视频在线| 亚洲欧美日韩在线| 国产成人精品亚洲777人妖| 欧美一区二区性放荡片| 伊人一区二区三区| 97国产精品videossex| 国产精品久久久久影院老司| 国产美女精品一区二区三区| 日韩欧美一区电影| 五月激情丁香一区二区三区| 欧美性大战久久久久久久蜜臀| 国产精品激情偷乱一区二区∴| 国产激情一区二区三区四区| 精品免费国产一区二区三区四区| 日韩中文欧美在线| 欧美电影一区二区三区| 亚洲国产成人av| 欧美日韩一区久久| 亚洲成人777| 欧美久久久久中文字幕| 亚洲国产综合色| 欧美三级视频在线| 亚洲成人免费视| 欧美日韩视频在线第一区| 亚洲第一福利视频在线| 欧美日韩大陆一区二区| 日韩国产欧美在线播放|