| version 1.7, 2001/01/08 05:26:48 |
version 1.10, 2003/07/21 12:41:22 |
|
|
| /* $OpenXM: OpenXM/src/k097/d.c,v 1.6 2000/12/10 02:21:45 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/k097/d.c,v 1.9 2003/07/13 08:18:27 takayama Exp $ */ |
| /* simple.c, 1996, 1/1 --- 1/5 */ |
/* simple.c, 1996, 1/1 --- 1/5 */ |
| #include <stdio.h> |
#include <stdio.h> |
| #include <ctype.h> |
#include <ctype.h> |
| #include <setjmp.h> |
#include <setjmp.h> |
| #include <stdlib.h> |
#include <stdlib.h> |
| |
#include <sys/types.h> |
| |
#include <sys/stat.h> |
| #include "d.h" |
#include "d.h" |
| #include "simple.tab.h" |
#include "simple.tab.h" |
| |
#include "ox_pathfinder.h" |
| |
|
| |
#if defined(__CYGWIN__) |
| |
#define JMP_BUF sigjmp_buf |
| |
#define SETJMP(env) sigsetjmp(env,1) |
| |
#define LONGJMP(env,p) siglongjmp(env,p) |
| |
#else |
| |
#define JMP_BUF jmp_buf |
| |
#define SETJMP(env) setjmp(env) |
| |
#define LONGJMP(env,p) longjmp(env,p) |
| |
#endif |
| |
|
| jmp_buf KCenvOfParser; |
JMP_BUF KCenvOfParser; |
| |
|
| int DebugMode = 1; |
int DebugMode = 1; |
| extern int K00_verbose; |
extern int K00_verbose; |
| Line 594 KCerror(char *s) /* You need this function. Otherwis |
|
| Line 606 KCerror(char *s) /* You need this function. Otherwis |
|
| while (fsgetc(Inop) > MARK_CHAR) ; |
while (fsgetc(Inop) > MARK_CHAR) ; |
| } |
} |
| return ; |
return ; |
| longjmp(KCenvOfParser,2); |
LONGJMP(KCenvOfParser,2); |
| exit(1); |
exit(1); |
| } |
} |
| |
|
| Line 1102 void showStringBuff(objectp op) |
|
| Line 1114 void showStringBuff(objectp op) |
|
| fprintf(stderr,"\n"); |
fprintf(stderr,"\n"); |
| } |
} |
| |
|
| |
|
| |
|
| char *getLOAD_K_PATH() { |
char *getLOAD_K_PATH() { |
| char *p; |
return getLOAD_K_PATH2(); |
| char *p2; |
|
| p = getenv("LOAD_K_PATH"); |
|
| if (p == NULL) { |
|
| return("/usr/local/lib/kxx97/yacc/"); |
|
| }else{ |
|
| if (strlen(p) == 0) return(p); |
|
| if (p[strlen(p)-1] == '/') return(p); |
|
| /* Add / */ |
|
| p2 = (char *) malloc(sizeof(char)*(strlen(p)+3)); |
|
| if (p2 == NULL) { fprintf(stderr,"No more memory.\n"); exit(10); } |
|
| strcpy(p2,p); strcat(p2,"/"); |
|
| return(p2); |
|
| } |
|
| } |
} |
| |
|