--- capa/capa51/pProj/capaGrammarDef.y 1999/10/13 18:45:28 1.2 +++ capa/capa51/pProj/capaGrammarDef.y 1999/10/13 20:05:00 1.3 @@ -646,7 +646,7 @@ answer_comp : ANS_CS { map_expr : startM '(' basic_constr ';' var_list ';' arg_list ')' - { char key[SIXTEEN]; + { char key[SMALL_LINE_BUFFER]; char warn_msg[WARN_MSG_LENGTH]; int result=0; @@ -674,7 +674,7 @@ map_expr : startM '(' basic_constr ' free_arglist($7->s_argp); } | startR '(' basic_constr ';' var_list ';' arg_list ')' - { char key[SIXTEEN]; + { char key[SMALL_LINE_BUFFER]; char warn_msg[WARN_MSG_LENGTH]; int result=0; @@ -889,7 +889,6 @@ Symbol *name,*index;int free_symbols; Symbol *s_p, *a_p; char *key, *tmp; int leng, idx_len; - leng = strlen(name->s_name)+8; /* [ ] */ switch(index->s_type) { @@ -933,17 +932,17 @@ Symbol *ar_name;int num_elem; { int i; Symbol *arg_list,*a_p; - char idx_str[SIXTEEN]; + char idx_str[MAX_BUFFER_SIZE]; - a_p = find_arrayid(ar_name); + a_p = find_arrayid(ar_name->s_name); i = 1; - sprintf(idx_str,"%ld",i); /* create array elements with integer index */ + sprintf(idx_str,"%s[%d]",ar_name->s_name,i); /* create array elements with integer index */ arg_list = find_array_by_index(a_p,idx_str); /* will create a new element if not found */ arg_list->s_argc=1; arg_list->s_argp=new_arglist(arg_list); for (i=2;i<=num_elem;i++) { - sprintf(idx_str,"%ld",i); + sprintf(idx_str,"%s[%d]",ar_name->s_name,i); arg_list->s_argc++; arg_list->s_argp=addto_arglist(arg_list->s_argp,find_array_by_index(a_p,idx_str)); } @@ -1142,7 +1141,7 @@ if( a->s_type == IDENTIFIER || b->s_type switch( b->s_type ) { case I_VAR: case I_CONSTANT: - leng = SIXTEEN; /* assuming a long integer does not exceed 16 digits*/ + leng = SMALL_LINE_BUFFER; /* assuming a long integer does not exceed 128 digits*/ b_str= capa_malloc(sizeof(char), leng); sprintf(b_str,"%ld", b->s_int); break; @@ -1326,7 +1325,7 @@ char * format_toTeX( real ) char *real; { int idx, length, fraclength, i_exp; - char *expo_p, fracS[SIXTEEN], result[ONE_K], *areal; + char *expo_p, fracS[SMALL_LINE_BUFFER], result[ONE_K], *areal; char warn_msg[WARN_MSG_LENGTH]; length = strlen(real); @@ -1374,7 +1373,7 @@ char * format_toHTML( real ) char *real; { int idx, length, fraclength, i_exp; - char *expo_p, fracS[SIXTEEN], result[ONE_K], *areal; + char *expo_p, fracS[SMALL_LINE_BUFFER], result[ONE_K], *areal; char warn_msg[WARN_MSG_LENGTH]; length = strlen(real);