From 4e9102daaa3df4cf5bb96c2bcfba63d2ab6fed52 Mon Sep 17 00:00:00 2001 From: rlar Date: Sun, 19 May 2013 23:12:21 +0200 Subject: [PATCH] inpcom.c, abstraction, find_subckt_w_params() --- src/frontend/inpcom.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) 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 */