=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/io/cpexpr.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -p -r1.16 -r1.17 --- OpenXM_contrib2/asir2000/io/cpexpr.c 2003/12/25 02:40:24 1.16 +++ OpenXM_contrib2/asir2000/io/cpexpr.c 2004/02/09 08:23:30 1.17 @@ -44,7 +44,7 @@ * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. - * $OpenXM: OpenXM_contrib2/asir2000/io/cpexpr.c,v 1.15 2003/02/14 22:29:15 ohara Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/io/cpexpr.c,v 1.16 2003/12/25 02:40:24 noro Exp $ */ #include "ca.h" #include "parse.h" @@ -81,6 +81,8 @@ extern int hex_output,fortran_output,double_output,rea #define PRINTGFMMAT length_gfmmat #define PRINTBYTEARRAY length_bytearray #define PRINTQUOTE length_QUOTE +#define PRINTSYMBOL length_SYMBOL +#define PRINTRANGE length_RANGE #define PRINTERR length_err #define PRINTLF length_lf #define PRINTLOP length_lop @@ -108,6 +110,8 @@ void PRINTGF2MAT(); void PRINTGFMMAT(); void PRINTBYTEARRAY(); void PRINTQUOTE(); +void PRINTSYMBOL(); +void PRINTRANGE(); void PRINTERR(); void PRINTCPLX(); void PRINTLM(); @@ -189,6 +193,10 @@ void PRINTEXPR(VL vl,pointer p) PRINTBYTEARRAY(vl,(BYTEARRAY)p); break; case O_QUOTE: PRINTQUOTE(vl,(QUOTE)p); break; + case O_SYMBOL: + PRINTSYMBOL((SYMBOL)p); break; + case O_RANGE: + PRINTRANGE(vl,(RANGE)p); break; default: break; } @@ -539,6 +547,17 @@ void PRINTQUOTE(VL vl,QUOTE quote) { /* <...quoted...> */ total_length += 20; +} + +void PRINTSYMBOL(SYMBOL sym) +{ + total_length += strlen(sym->name); +} + +void PRINTRANGE(VL vl,RANGE r) +{ + PUTS("range("); PRINTEXPR(vl,r->start); + PUTS(","); PRINTEXPR(vl,r->end); PUTS(")"); } void PRINTERR(VL vl,ERR e)