diff --git a/src/frontend/inpcom.c b/src/frontend/inpcom.c index 0b214012b..a05edc524 100644 --- a/src/frontend/inpcom.c +++ b/src/frontend/inpcom.c @@ -2003,6 +2003,19 @@ new_subckt_w_params(char *str) } +static char ** +find_subckt_w_params(char *subckt_name) +{ + int i; + + for (i = 0; i < num_subckt_w_params; i++) + if (strcmp(subckt_w_params[i], subckt_name) == 0) + return & subckt_w_params[i]; + + return NULL; +} + + static char* inp_fix_subckt(char *s) { @@ -2670,11 +2683,8 @@ inp_fix_inst_calls_for_numparam(struct line *deck) } if (ciprefix("x", inst_line)) { subckt_name = inp_get_subckt_name(inst_line); - for (i = 0; i < num_subckt_w_params; i++) - if (strcmp(subckt_w_params[i], subckt_name) == 0) - break; - if (i < num_subckt_w_params) { + if (find_subckt_w_params(subckt_name)) { sprintf(name_w_space, "%s ", subckt_name); /* find .subckt line */