Commit Graph

4967 Commits

Author SHA1 Message Date
rlar 84c22e656a nupa_subcktcall(), j ==> jp - (const) t_p 2018-02-17 19:15:55 +01:00
rlar 0f53656412 nupa_subcktcall(), split personality of `j' 2018-02-17 19:15:55 +01:00
rlar 80701652fc nupa_subcktcall(), cleanup getexpress() usage
# Conflicts:
#	src/frontend/numparam/xpressn.c
2018-02-17 19:15:55 +01:00
rlar 742f34f596 nupa_subcktcall(), spice_dstring_value(&tstr) ==> t_p
t_p is const and tstr hasn't been modified either,
thus still the same value.
2018-02-17 19:15:55 +01:00
rlar cb4dfa13d8 nupa_subcktcall(), reduce scope of some locals 2018-02-17 19:15:55 +01:00
rlar 9670af0d4e nupa_subcktcall(), drop `i', use a pointer instead 2018-02-17 19:15:55 +01:00
rlar 6e5ef92fd2 nupa_subcktcall(), transform pscopy(,x,y,) --> pscopy(,x+y,y-y,) (requirement strlen(x) >= y to be verified later) 2018-02-17 19:15:55 +01:00
rlar 53adeee1d3 nupa_subcktcall(), drop j1 and t_p1, use a pointer instead 2018-02-17 19:15:55 +01:00
rlar c133f21ef7 nupa_subcktcall(), split personality of `t_p' 2018-02-17 19:15:55 +01:00
rlar f17521fa4c nupa_subcktcall(), split personality of `ls' 2018-02-17 19:15:55 +01:00
rlar 81e02154be nupa_subcktcall(), split personality of `j' 2018-02-17 19:15:55 +01:00
rlar 13d9ecd517 nupa_subcktcall(), some constness 2018-02-17 19:15:55 +01:00
rlar 06b71fe2d2 nupa_subcktcall(), use skip_non_ws() 2018-02-17 19:15:55 +01:00
rlar fa1c710f68 nupa_subcktcall(), move code down to a better place 2018-02-17 19:15:55 +01:00
rlar 1987559e89 nupa_subcktcall(), drop redundant initialisation for `narg'
and delay its incrementation a bit
2018-02-17 19:15:55 +01:00
rlar b8f4b3e27e nupa_subcktcall(), fix excess length in pscopy argument 2018-02-17 19:15:55 +01:00
rlar 8190ba3fca nupa_subcktcall(), fix, honour end of string 2018-02-17 19:15:55 +01:00
rlar 4859f7d8df findsubname(), cleanup and use isspace_c() 2018-02-17 19:15:55 +01:00
rlar 784ad14d60 findsubname(), drop `ls_ptr' 2018-02-17 19:15:55 +01:00
rlar d647a84e66 findsubname(), just truncate it 2018-02-17 19:15:55 +01:00
rlar 5e6fe75db6 findsubname(), collect decrement operations 2018-02-17 19:15:55 +01:00
rlar 31ad5ca970 findsubname(), decrement later 2018-02-17 19:15:55 +01:00
rlar 01eb593ca4 findsubname(), explicit break out of the loop 2018-02-17 19:15:55 +01:00
rlar cbd38fdc9c findsubname(), use skip_back_ws() 2018-02-17 19:15:55 +01:00
rlar 270e0b6154 findsubname(), cleanup 2018-02-17 19:15:55 +01:00
rlar a5c743d48c findsubname(), fix lvalues 2018-02-17 19:15:55 +01:00
rlar 21d3f04659 findsubname(), h ==> p_end - (const) s 2018-02-17 19:15:55 +01:00
rlar 8881aead44 findsubname(), cleanup 2018-02-17 19:15:55 +01:00
rlar c8340f2b4c findsubname(), fix lvalues 2018-02-17 19:15:55 +01:00
rlar 90bb7cc289 findsubname(), j ==> t - (const) s 2018-02-17 19:15:55 +01:00
rlar 1778b608d8 findsubname(), cleanup 2018-02-17 19:15:55 +01:00
rlar 8df5717017 findsubname(), fix lvalues 2018-02-17 19:15:55 +01:00
rlar a7c2253c8a findsubname(), k ==> p - (const) s - 1 2018-02-17 19:15:55 +01:00
rlar 623436c9f9 findsubname(), fix lvalues 2018-02-17 19:15:55 +01:00
rlar 521fee88a6 findsubname(), ls ==> ls_ptr - (const) s 2018-02-17 19:15:55 +01:00
rlar 4ca87d6b0b findsubname(), reorder and add some constness 2018-02-17 19:15:55 +01:00
rlar ab152c99fc findsubname(), local scope for `nest' `j' and `h' 2018-02-17 19:15:55 +01:00
rlar 45f3749bb1 findsubname(), drop `found', which is constantly 0
because of the previous commit
2018-02-17 19:15:55 +01:00
rlar f0cead24b8 findsubname(), duplicate function epilogue and return early 2018-02-17 19:15:55 +01:00
rlar 4986df1baf findsubname(), signature, drop unused return value 2018-02-17 19:15:55 +01:00
rlar af78917b98 stripbraces(), whitespace 2018-02-17 19:15:55 +01:00
rlar 11e024753a stripbraces(), cleanup 2018-02-17 19:15:55 +01:00
rlar 13be771308 stripbraces(), s + i ==> p 2018-02-17 19:15:55 +01:00
rlar ab15f0b7bb stripbraces(), group `s + i' 2018-02-17 19:15:55 +01:00
rlar 0101db946b stripbraces(), s0 ==> s 2018-02-17 19:15:55 +01:00
rlar e4e408d656 stripbraces(), unuse local `s'
`s0' does not change in the area of interest and has the same value
2018-02-17 19:15:55 +01:00
rlar cb859060e0 stripbraces(), drop `i_ptr' 2018-02-17 19:15:55 +01:00
rlar 951517250b stripbraces(), fix lvalue and cleanup 2018-02-17 19:15:55 +01:00
rlar d4dad0f10c stripbraces(), i ==> i_ptr - (const) s 2018-02-17 19:15:55 +01:00
rlar 186352b7e5 stripbraces(), fix lvalue and cleanup 2018-02-17 19:15:55 +01:00
rlar 686329dcaf stripbraces(), j ==> j_ptr - (const) s 2018-02-17 19:15:55 +01:00
rlar fc45b3addf stripbraces(), make `s' constant in the region of interest 2018-02-17 19:15:55 +01:00
rlar 170aa84f47 stripbraces(), drop `ls' 2018-02-17 19:15:55 +01:00
rlar e2c2140a52 stripbraces(), drop `t_p', which points to a copy of `s' 2018-02-17 19:15:55 +01:00
rlar 8d0df0d024 stripbraces(), fix split personality of `i' 2018-02-17 19:15:55 +01:00
rlar 98ec9c2fa3 stripbraces(), use `strchr()' 2018-02-17 19:15:55 +01:00
rlar 26ff93abd9 stripbraces(), simplify 2018-02-17 19:15:55 +01:00
rlar 1721407359 transform(), use `strstr()' instead of `spos_()' 2018-02-17 19:15:55 +01:00
rlar e28169d62c transform(), reduce scope of `tstr' 2018-02-17 19:15:55 +01:00
rlar f776a24ea7 transform(), ci_prefix() is case insensitive
thus can use `s' instead of `t'
and ci_prefix() does return a boolean
2018-02-17 19:15:55 +01:00
rlar 6500aeb132 transform(), drop local `n' 2018-02-17 19:15:55 +01:00
rlar 7cf4338981 transform(), drop unused argument `u_p' 2018-02-17 19:15:55 +01:00
rlar ea6290f666 nupa_substitute(), cleanup and a fixme
the '&' sequences, which are hopefully nowhere announced and advertised,
might increment char pointers beyond the terminating '\0' causing havoc.
2018-02-17 19:15:55 +01:00
rlar abb16c288b nupa_substitute(), cleanup 2018-02-17 19:15:55 +01:00
rlar 0d3c0dfd78 nupa_substitute(), rename r_ --> r 2018-02-17 19:15:55 +01:00
rlar a34703f748 nupa_substitute(), verify `r' beeing unused now 2018-02-17 19:15:55 +01:00
rlar b0e5fc267c nupa_substitute(), cleanup 2018-02-17 19:15:55 +01:00
rlar cc02b9ae2d nupa_substitute(), fix lvalue and cleanup 2018-02-17 19:15:55 +01:00
rlar ac59410602 nupa_substitute(), ir ==> r_ - (const) r 2018-02-17 19:15:55 +01:00
rlar 0fd1e2323c nupa_substitute(), express some constness 2018-02-17 19:15:55 +01:00
rlar 6c1d3ba34a nupa_substitute(), whitespace 2018-02-17 19:15:55 +01:00
rlar 6b5606edc1 nupa_substitute(), cleanup return on error 2018-02-17 19:15:55 +01:00
rlar cba740f88d nupa_substitute(), postpone `s' incrementation 2018-02-17 19:15:55 +01:00
rlar ad1eeeb410 nupa_substitute(), postpone `s' incrementation 2018-02-17 19:15:55 +01:00
rlar 39b544aba1 nupa_substitute(), cleanup 2018-02-17 19:15:55 +01:00
rlar 6a003e52d1 nupa_substitute(), cleanup for loops 2018-02-17 19:15:55 +01:00
rlar ad603be96f nupa_substitute(), cleanup for loops 2018-02-17 19:15:55 +01:00
rlar c06dddc4db nupa_substitute(), break sooner 2018-02-17 19:15:55 +01:00
rlar baf76512b3 nupa_substitute(), reduce scope of d 2018-02-17 19:15:55 +01:00
rlar 55e7fa269a nupa_substitute(), at the end of the loop d === *kptr 2018-02-17 19:15:55 +01:00
rlar 571909b8b6 nupa_substitute(), postpone kptr incrementation 2018-02-17 19:15:55 +01:00
rlar d38804d7c0 nupa_substitute(), move final kptr incrementation out of the loop 2018-02-17 19:15:55 +01:00
rlar f5448025a8 nupa_substitute(), postpone kptr incrementation 2018-02-17 19:15:55 +01:00
rlar 0aff4dfaa6 nupa_substitute(), transform while loop 2018-02-17 19:15:55 +01:00
rlar ef1d896cee nupa_substitute(), reduce scope of local variabes 2018-02-17 19:15:55 +01:00
rlar bd335cb5be nupa_substitute(), delay kptr assignment 2018-02-17 19:15:55 +01:00
rlar ca84d10d0a stripsomespace(), drop `ls' 2018-02-17 19:15:55 +01:00
rlar cc05c0c05b formula(), postpone kptr incrementation 2018-02-17 19:15:55 +01:00
rlar abe572237f formula(), postpone arg2 and arg3 incrementation 2018-02-17 19:15:55 +01:00
rlar a35a2fd3db formula(), cleanup for(;;) loop 2018-02-17 19:15:55 +01:00
rlar 3136f45229 formula(), move final kptr incrementation out of the loop 2018-02-17 19:15:55 +01:00
rlar 2010e6b4fb formula(), kptr++ to the for loop epilogue 2018-02-17 19:15:55 +01:00
rlar c761b4432a formula(), transform while loop 2018-02-17 19:15:55 +01:00
rlar 11adf9f62c findsubckt(), cleanup 2018-02-17 19:15:55 +01:00
rlar 6a9248f111 findsubckt(), use skip_back_ws() 2018-02-17 19:15:55 +01:00
rlar 9bccda5450 findsubckt(), cleanup 2018-02-17 19:15:55 +01:00
rlar 9e1a6b85ff findsubckt(), swap name_b and name_e in the prolog 2018-02-17 19:15:55 +01:00
rlar 61f3ecffd6 findsubckt(), rename k_ptr --> name_b 2018-02-17 19:15:55 +01:00
rlar 23b741868b findsubckt(), cleanup 2018-02-17 19:15:55 +01:00
rlar 51405f8ee7 findsubckt(), fix lvalue 2018-02-17 19:15:55 +01:00
rlar b3c40a77cf findsubckt(), j_ptr --> name_e - 1 2018-02-17 19:15:55 +01:00
rlar 3d9a76d342 findsubckt(), drop k_ptr--, use k_ptr - 1 instead 2018-02-17 19:15:55 +01:00
rlar 8cd136c6bd findsubckt(), move k_ptr-- beyond the loop 2018-02-17 19:15:55 +01:00
rlar b0b4551d68 findsubckt(), move k_ptr-- to the front of the next loop 2018-02-17 19:15:54 +01:00
rlar d2dac0ea9d findsubckt(), move k_ptr-- beyond the loop 2018-02-17 19:15:54 +01:00
rlar e1f5609568 findsubckt(), exclude the terminating '\0' from the search 2018-02-17 19:15:54 +01:00
rlar a0f9b2bf0f findsubckt(), cleanup 2018-02-17 19:15:54 +01:00
rlar f4bd03a00f findsubckt(), transform pscopy(,x,y,) --> pscopy(,x+y,y-y,) (requirement strlen(x) >= y to be verified later) 2018-02-17 19:15:54 +01:00
rlar c486218e33 findsubckt(), cleanup 2018-02-17 19:15:54 +01:00
rlar a9c2f81878 findsubckt(), fix lvalue 2018-02-17 19:15:54 +01:00
rlar 940eb2a258 findsubckt(), j ==> j_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar cd05eb1d50 findsubckt(), fix lvalue 2018-02-17 19:15:54 +01:00
rlar 78147c2bd9 findsubckt(), k ==> k_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar 81b60b7367 findsubckt(), constness 2018-02-17 19:15:54 +01:00
rlar 849d12b18a defsubckt(), rename j_ptr ==> s_end 2018-02-17 19:15:54 +01:00
rlar 948352a2ed defsubckt(), drop i_ptr, use s instead 2018-02-17 19:15:54 +01:00
rlar 82d4f8544c defsubckt(), check `s' beeing nowhere used anymore 2018-02-17 19:15:54 +01:00
rlar a46e1113d0 defsubckt(), drop `ls_ptr' 2018-02-17 19:15:54 +01:00
rlar 10e9760f13 defsubckt(), transform pscopy(,x,y,) --> pscopy(,x+y,y-y,) (requirement strlen(x) >= y to be verified later) 2018-02-17 19:15:54 +01:00
rlar 44a17a14f7 defsubckt(), cleanup 2018-02-17 19:15:54 +01:00
rlar 9a64579db6 defsubckt(), fix lvalue 2018-02-17 19:15:54 +01:00
rlar d73a265c45 defsubckt(), j ==> j_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar 1a44e4fb42 defsubckt(), fix lvalue 2018-02-17 19:15:54 +01:00
rlar 6d285d927a defsubckt(), i ==> i_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar deca1a05ed defsubckt(), fix lvalue 2018-02-17 19:15:54 +01:00
rlar 4e89b80a75 defsubckt(), ls ==> ls_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar dbcbf62012 defsubckt(), constness 2018-02-17 19:15:54 +01:00
rlar 27884d2512 nupa_assignment(), postpone p++ 2018-02-17 19:15:54 +01:00
rlar f0fa06ea26 nupa_assignment(), whitespace 2018-02-17 19:15:54 +01:00
rlar 0624584370 nupa_assignment(), simplify error processing 2018-02-17 19:15:54 +01:00
rlar 66433eda0b nupa_assignment(), cleanup 2018-02-17 19:15:54 +01:00
rlar 8bded8b878 nupa_assignment(), cleanup 2018-02-17 19:15:54 +01:00
rlar 8f9f03c457 nupa_assignment(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar 0e6ece4370 nupa_assignment(), ls ==> s_end - (const) s 2018-02-17 19:15:54 +01:00
rlar 410e70b9b9 nupa_assignment(), express some constness 2018-02-17 19:15:54 +01:00
rlar 5f0958026b nupa_assignment(), cleanup 2018-02-17 19:15:54 +01:00
rlar ba2c95243f nupa_assignment(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar 8300021c7a nupa_assignment(), i ==> p - (const) s 2018-02-17 19:15:54 +01:00
rlar f595db7619 nupa_assignment(), express some constness 2018-02-17 19:15:54 +01:00
rlar 35524f7e48 getexpress(), rename ls_ptr --> s_end 2018-02-17 19:15:54 +01:00
rlar 043a04b775 getexpress(), simplify usage 2018-02-17 19:15:54 +01:00
rlar 830b5faf0e getexpress(), return one less 2018-02-17 19:15:54 +01:00
rlar 33b8936a3b getexpress(), drop `c' and cleanup 2018-02-17 19:15:54 +01:00
rlar f8fc4edf52 getexpress(), remove const, `pi' and rename xia_ptr --> s 2018-02-17 19:15:54 +01:00
rlar 9494f8d9af getexpress(), change signature, return char * to continue with 2018-02-17 19:15:54 +01:00
rlar 0c363d7b4f getexpress(), return `tpe' per reference 2018-02-17 19:15:54 +01:00
rlar 49bdcc3e3d getexpress(), drop first argument `ls_ptr' 2018-02-17 19:15:54 +01:00
rlar 4bbff47518 getexpress(), first arg s ==> s + strlen(s) 2018-02-17 19:15:54 +01:00
rlar 7fc7202bdf getexpress(), `p' doesn't need to be initialised here 2018-02-17 19:15:54 +01:00
rlar 4a6c7db226 getexpress(), break early
instead of doing nothing and then breaking
2018-02-17 19:15:54 +01:00
rlar 8a3871a0ef getexpress(), transform loop 2018-02-17 19:15:54 +01:00
rlar 92eb2b0437 getexpress(), break early
instead of doing nothing and then breaking anyway
2018-02-17 19:15:54 +01:00
rlar 2f24e6e563 getexpress(), local scope for `c' and `d' 2018-02-17 19:15:54 +01:00
rlar 86ef4b8cb1 getexpress(), transform loop 2018-02-17 19:15:54 +01:00
rlar 1df1e69f5d getexpress(), d == ')' is automatically true
when level has been decremented to level <= 0
2018-02-17 19:15:54 +01:00
rlar 1e6a44af27 getexpress(), transform 2018-02-17 19:15:54 +01:00
rlar 0cc72ae3c1 getexpress(), always true 2018-02-17 19:15:54 +01:00
rlar f87c629e1b getexpress(), break 2018-02-17 19:15:54 +01:00
rlar 9ace8b161f getexpress(), scope 2018-02-17 19:15:54 +01:00
rlar f2013088a6 getexpress(), transform `<' etc comparisons 2018-02-17 19:15:54 +01:00
rlar d1b25d59bb getexpress(), cleanup 2018-02-17 19:15:54 +01:00
rlar a913def4d7 getexpress(), cleanup 2018-02-17 19:15:54 +01:00
rlar ec68ee7b94 getexpress(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar 9ff93246b6 getexpress(), ia_ptr ==> xiaptr + 1 2018-02-17 19:15:54 +01:00
rlar 47db566181 getexpress(), cleanup 2018-02-17 19:15:54 +01:00
rlar 4402686c69 getexpress(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar 6da6f6a4fd getexpress(), iptr ==> p + 1 2018-02-17 19:15:54 +01:00
rlar 7509fa17da getexpress(), transform pscopy(,x,y,) --> pscopy(,x+y,y-y,) (requirement strlen(x) >= y to be verified later) 2018-02-17 19:15:54 +01:00
rlar 0f00fd3043 getexpress(), cleanup 2018-02-17 19:15:54 +01:00
rlar a47348526c getexpress(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar dc8eb2b956 getexpress(), ia ==> ia_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar 44c5410490 getexpress(), fix lvalue 2018-02-17 19:15:54 +01:00
rlar 632829575b getexpress(), ls ==> ls_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar f19ddf6090 getexpress(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar c351f2f19b getexpress(), i ==> iptr - (const) s 2018-02-17 19:15:54 +01:00
rlar d4098d454b getexpress(), third argument, `char **pi' instead of `int *pi' 2018-02-17 19:15:54 +01:00
rlar 57b822e0e9 getexpress(), express some constness 2018-02-17 19:15:54 +01:00
rlar d9a2cec430 getword(), drop s_end argument, which is always == s + strlen(s) 2018-02-17 19:15:54 +01:00
rlar c5966489c9 getword(), return one less 2018-02-17 19:15:54 +01:00
rlar f5d686e23c getword(), cleanup 2018-02-17 19:15:54 +01:00
rlar 51c9f93b7a getword(), substitue s = s - 1 2018-02-17 19:15:54 +01:00
rlar f96eb16255 getword(), (s < x) ==> (s - 1 < x - 1) 2018-02-17 19:15:54 +01:00
rlar cc452a4c90 getword(), transform while loop 2018-02-17 19:15:54 +01:00
rlar d6801c0cf1 getword(), substitute s = s - 1 2018-02-17 19:15:54 +01:00
rlar 68b0be8caa getword(), (s <= x) --> (s - 1 < x) 2018-02-17 19:15:54 +01:00
rlar 10aaa7bcc0 getword(), rename variables 2018-02-17 19:15:54 +01:00
rlar ba4d81b2d9 getword(), reorder args 2018-02-17 19:15:54 +01:00
rlar 6ca0c74cbf getword(), pass s_end instead of s 2018-02-17 19:15:54 +01:00
rlar 3f24aa4ea0 getword(), cleanup 2018-02-17 19:15:54 +01:00
rlar d17bcbc276 getword(), change signature 2018-02-17 19:15:54 +01:00
rlar d3d966b027 getword(), cleanup 2018-02-17 19:15:54 +01:00
rlar 52ec0a262c getword(), fix lvalue 2018-02-17 19:15:54 +01:00
rlar 2514664f7a getword(), ls ==> ls_ptr - (const) s 2018-02-17 19:15:54 +01:00
rlar d5893cd1cb getword(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar 51dc7037d3 getword(), i ==> iptr - (const) s 2018-02-17 19:15:54 +01:00
rlar 051c3f4137 getword(), third argument, `char **pi' instead of `int *pi' 2018-02-17 19:15:54 +01:00
rlar 6ba5a05905 getword(), drop `after' argument which is identical to `*pi' 2018-02-17 19:15:54 +01:00
rlar cf9c3fc4f8 getword(), express some constness 2018-02-17 19:15:54 +01:00
rlar 6a72c09b5f insertnumber(), return char pointer instead of integer index 2018-02-17 19:15:54 +01:00
rlar 34e37f393c insertnumber(), rename s_ ==> s 2018-02-17 19:15:54 +01:00
rlar 1f15329745 insertnumber(), drop second argument 2018-02-17 19:15:54 +01:00
rlar 9f6173cd0b insertnumber(), add second arg on invocation 2018-02-17 19:15:54 +01:00
rlar a2ddc6bf2a insertnumber(), express some constness 2018-02-17 19:15:54 +01:00
rlar b41b8e7138 insertnumber(), add `i' on invocation 2018-02-17 19:15:54 +01:00
rlar 160529cf59 insertnumber(), express some constness 2018-02-17 19:15:54 +01:00
rlar e8bc7df5c3 insertnumber(), emphasize return i + ... 2018-02-17 19:15:54 +01:00
rlar 06501162e5 nupa_substitute(), make use of the transformations 2018-02-17 19:15:54 +01:00
rlar 2a446c2119 nupa_substitute(), use `strncasecmp()' 2018-02-17 19:15:54 +01:00
rlar c036fa0519 nupa_substitute(), cleanup 2018-02-17 19:15:54 +01:00
rlar 81cb1ed674 nupa_substitute(), drop s_ 2018-02-17 19:15:54 +01:00
rlar 5416ecaab9 nupa_substitute(), rename iptr --> s 2018-02-17 19:15:54 +01:00
rlar 18f69116e8 nupa_substitute(), verify `s' beeing unused now 2018-02-17 19:15:54 +01:00
rlar 03abdc65f5 nupa_substitute(), cleanup 2018-02-17 19:15:54 +01:00
rlar 53b23cf4b6 nupa_substitute(), transform pscopy(,x,y,) --> pscopy(,x+y,y-y,) (requirement strlen(x) >= y to be verified later) 2018-02-17 19:15:54 +01:00
rlar 8e69f7e70a nupa_substitute(), cleanup 2018-02-17 19:15:54 +01:00
rlar 0bea4987c4 nupa_substitute(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar b47123ac6a nupa_substitute(), i ==> iptr - (const) s 2018-02-17 19:15:54 +01:00
rlar b832578f0e nupa_substitute(), fix lvalues 2018-02-17 19:15:54 +01:00
rlar ccf34637b3 nupa_substitute(), k ==> kptr - (const) s 2018-02-17 19:15:54 +01:00
rlar 551aae4b05 nupa_substitute(), drop ls 2018-02-17 19:15:54 +01:00
rlar 4af5a78bb5 nupa_substitute(), ls ==> s_end - (const) s 2018-02-17 19:15:54 +01:00
rlar fb3a1be6a5 nupa_substitute(), express some constness 2018-02-17 19:15:54 +01:00
rlar aa5d48da3b nupa_substitute(), drop unused argument `err' 2018-02-17 19:15:54 +01:00
rlar e212566176 evaluate_variable(), change signature, pass substring instead of string
side effect:
  string `t' is no longer globally upcased, which is is of no consequence
  for the single place where evaluate_variable() is invoked
2018-02-17 19:15:54 +01:00
rlar 3f7951d187 evaluate_expr(), change signature, pass substring instead of string 2018-02-17 19:15:54 +01:00
rlar 7aa3664157 numparam, drop some typedefs 2018-02-17 19:15:54 +01:00
rlar fa14255fc9 numparam, use `strtoupper()', drop `stupcase()' 2018-02-17 19:15:54 +01:00
rlar a0a3f48227 numparam/xpressn.c, remove an artifact 2018-02-17 19:15:54 +01:00
rlar 7b175dd1c4 numparam, drop unused `srcfile' 2018-02-17 19:15:54 +01:00
rlar 4f8bef997d numparam, nupa_signal(), drop useless return value 2018-02-17 19:15:54 +01:00
rlar 5b194f1679 numparam, drop unused stuff 2018-02-17 19:15:54 +01:00
rlar 15e8fab975 numparam, use `trunc()' 2018-02-17 19:15:54 +01:00
rlar 31ca73a6f0 numparam, use `isdigit_c()' 2018-02-17 19:15:54 +01:00
rlar e88e75a8d4 numparam, use `toupper_c()' 2018-02-17 19:15:54 +01:00
rlar 6d5b968464 numparam, use `tolower_c()' 2018-02-17 19:15:54 +01:00
rlar 3b0a595ecf numparam/mystring.c, drop defect and unused `ccopy()' 2018-02-17 19:15:54 +01:00
rlar db8f8fc062 numparam/mystring.c, fix `pscopy()' and `pscopy_up()' 2018-02-17 19:15:54 +01:00
rlar 6a328ef609 numparam, drop `length()' 2018-02-17 19:15:54 +01:00
rlar 15dd80c0e7 numparam, drop `cpos()' 2018-02-17 19:15:54 +01:00
rlar e324e4aac3 numparam/spicenum.c, use type `bool' 2018-02-17 19:15:54 +01:00
rlar cd260cf45a numparam/spicenum.c, stripsomespace(), cleanup 2018-02-17 19:15:54 +01:00
rlar a9a8afa12d numparam/xpressn.c, split `evaluate()' into two functions 2018-02-17 19:15:54 +01:00
rlar 6da961c3f1 numparam/xpressn.c, evaluate(), drop local `numeric'
and return instantly when formula() reports an error
2018-02-17 19:15:54 +01:00
rlar 7549b3409e numparam/xpressn.c, abstraction, introduce `double_to_string()' 2018-02-17 19:15:54 +01:00
rlar 6d4fc501bd numparam/xpressn.c, evaluate_variable(), cleanup `for' loop 2018-02-17 19:15:54 +01:00
rlar fdfaf0c84a numparam/xpressn.c, don't mess the case of quoted strings
and drop `dico_t.option' which is nowhere set
2018-02-17 19:15:54 +01:00
rlar 23f6d51c67 numparam/xpressn.c, evaluate(), drop local `done' and `lq'
no longer limit the length of a quoted string parameter
2018-02-17 19:15:54 +01:00
rlar e970e8c4ea numparam/xpressn.c, evaluate(), drop `dt' 2018-02-17 19:15:54 +01:00
rlar 00c3d2f79e numparam/xpressn.c, drop `getidtype()' 2018-02-17 19:15:54 +01:00
rlar 34040a592d numparam, #3/3, remove global `nupa_inst_name' 2018-02-17 19:15:54 +01:00
rlar 1bf2590caa numparam, #2/3, avoid global `nupa_inst_name' 2018-02-17 19:15:53 +01:00
rlar ca4278685d numparam, #1/3, avoid global `nupa_inst_name' 2018-02-17 19:15:53 +01:00
rlar 495eef349d numparam/xpressn.c, nupa_subcktcall(), drop unused `err' argument 2018-02-17 19:15:53 +01:00
rlar 979175fbc6 numparam/xpressn.c, findsubckt(), drop unused `subname' argument 2018-02-17 19:15:53 +01:00
rlar f42c8d60b4 numparam/spicenum.c, use `copy_substring()' 2018-02-17 19:15:53 +01:00
rlar 49e03cdcb2 numparam, entry_type, #5/5, rewrite to get rid of 'NUPA_SPACE'
use fact: 'entry' !== NULL
2018-02-17 19:15:53 +01:00
rlar c761c74a22 numparam, entry_type, #4/5, drop 'nolookup' which has known value here 2018-02-17 19:15:53 +01:00
rlar b7b6d9ace3 numparam, entry_type, #3/5, drop unused 'NUPA_POINTER'
'NUPA_POINTER' is nowhere assigned to storage
  thus 'nupa_type' variables can never have this value
2018-02-17 19:15:53 +01:00
rlar 09d92ba692 numparam, entry_type, #2/5, use a type-checked enum for 'nupa_type' 2018-02-17 19:15:53 +01:00
rlar 6a1c9f934c numparam, entry_type, #1/5, introduce typedef 'nupa_type' 2018-02-17 19:15:53 +01:00
rlar 21f2187530 numparam/xpressn.c, #5/5, drop unused assignment 2018-02-17 19:15:53 +01:00
rlar 1820f5547f numparam/xpressn.c, #4/5, use a local 'c' instead of 'dt' 2018-02-17 19:15:53 +01:00
rlar 85f48726ea numparam/xpressn.c, #3/5, whitespace 2018-02-17 19:15:53 +01:00
rlar 146ca72153 numparam/xpressn.c, #2/5, cleanup, drop 'err' and return early 2018-02-17 19:15:53 +01:00
rlar 303d78f616 numparam/xpressn.c, #1/5, cleanup, rewrite upside down
and use known variable values to instantly 'return'
instead of skipping some 'if' bodies
2018-02-17 19:15:53 +01:00
rlar bc0782aba1 numparam, #4/4, defsubckt(), use struct card * argument 2018-02-17 19:15:53 +01:00
rlar 2a149d7541 numparam, #3/4, nupa_scan(), use struct card * argument 2018-02-17 19:15:53 +01:00
rlar 77da3c6f26 numparam, #2/2, nupa_copy(), use struct card * argument 2018-02-17 19:15:53 +01:00
rlar 19dfaf03f3 numparam, #1/2, nupa_eval(), use struct card * argument 2018-02-17 19:15:53 +01:00
rlar ee489599cb struct card, #6/6, drop some redundant casts 2018-02-17 19:15:53 +01:00
rlar 4ec2717079 struct card, #5/6, rewrite from type "card" to "struct card" 2018-02-17 19:15:53 +01:00
rlar 10a353ebf4 struct card, #4/6, drop typedef card
For readability and to allow variables to have the name "card"
(avoid name collision with typedef "card")
2018-02-17 19:15:53 +01:00
rlar 511cdd7188 struct card, #3/6, rename members from struct line to struct card 2018-02-17 19:15:53 +01:00
rlar 981fed70ca struct card, #2/6, drop struct line
struct line is an overlay of struct card.
2018-02-17 19:15:53 +01:00
rlar 8d93511a96 struct card, #1/6, minor cleanup 2018-02-17 19:15:53 +01:00
rlar 121a46f9cb frontend/com_alias.c, asubst(), bug fix
wl_word can not be incremented,
  this is a pointer to malloc'ed space
  and will eventually be free'ed
2018-02-17 15:30:06 +01:00
rlar 41c0ee45a2 introduce GENinstanceFree() and GENmodelFree()
To abstract away the business of releasing the memory
  of a struct GENmodel or struct GENinstance.
2018-02-17 11:53:07 +01:00
rlar 8c7d7051ae GENmodel, GENinstance, change layout, #4/4, complete the change
currently each and every device specific instance and model structure
  duplicates the memory layout of a struct GENmodel / GENinstance

further the first structure elements behind a GENinstance header
  are reinterpreted as a sort of a generic "node" array.

This business is very error prone, and makes it difficult to
  extend struct GENmodel / struct GENinstance.

This patch makes this business much more bearable.
2018-02-17 11:53:06 +01:00
rlar 2c9bfecbad GENmodel, GENinstance, change layout, #3/4, coccinelle semantic patch 2018-02-17 11:53:05 +01:00
rlar c25aea6815 GENmodel, GENinstance, change layout, #2/4, complete the change
fix the .xml files too
2018-02-17 11:53:03 +01:00
rlar 2dcb79d09c GENmodel, GENinstance, change layout, #1/4, coccinelle semantic patch 2018-02-17 11:53:01 +01:00
rlar 4748c92de9 DEVdestroy(), change API, #2/2, complete the change, inclusive CKTdestroy()
loop over DEVmodDelete() and DEVdelete() in CKTdestroy()
  instead of doing this business in the DEVdestroy() functions.

As a consequence, most DEVdestroy() functions
  collapse completely.
2018-02-17 11:52:59 +01:00
rlar 1befa488f6 DEVdestroy(), change API, #1/2, coccinelle semantic patch 2018-02-17 11:52:58 +01:00
rlar b29ad51a6c DEVdestroy(), move code over to DEVmodDelete() and DEVdelete()
This patch itself is not valid until all invokers of DEVdestroy()
  (currently this is CKTdestroy() exclusively)
  are rewritten to invoke DEVmodDelete() and DEVdelete()
2018-02-17 11:52:55 +01:00
rlar 3cd81295a8 DEVmodDelete(), change API, #2/2, complete the change
Instead of searching and then deleting a given device-model,
  just delete the given model.

The search shall be done somewhere else.

Don't free the model struct itself,
  this shall be done by the invoker himself.

Don't free the device instrance list,
  this shall be done by the invoker himself.

As a consequence, most DEVmodDelete() functions
  collapse almost completely.

This change is of no consequence,
  because DEVmodDelete() is currently nowhere used.
2018-02-17 11:52:53 +01:00
rlar b17ee71576 DEVmodDelete(), change API, #1/2, coccinelle semantic patch 2018-02-17 11:52:51 +01:00
rlar 50e9a8c3b6 DEVmodDelete(), extend ASRCdelete() and use it in ASRCmDelete()
rip instance specific cleanup business from the ASRCmDelete() function.
move this to ASRCdelete()
2018-02-17 11:52:49 +01:00
rlar c3ed42f486 DEVdelete(), change API, #2/2, complete the change
Instead of searching and then deleting a given device-instance,
  just delete the given instance.

The search shall be done somewhere else.

Don't free the instance struct itself,
  this shall be done by the invoker.

As a consequence most DEVdelete() functions
  collapse almost completely.

This change is of no consequence,
  because DEVdelete() is currently nowhere used.
2018-02-17 11:52:46 +01:00
rlar e0f1e5a3de DEVdelete(), change API, #1/2, coccinelle semantic patch 2018-02-17 11:52:44 +01:00
rlar a8e440eabe whitespace cleanup, comments cleanup, line wrap 2018-02-14 18:53:30 +01:00
rlar ec4b7ffecd adms/admst/ngspiceMODULE*.c.xml, drop "register" declaration 2018-02-12 17:56:00 +01:00
rlar 57f9804db6 devices/adms/admst/ngspiceMODULEdel.c.xml, bug fix, endless loop
A missing update of "prev" would cause endless looping
  when searching for a device instance.

introduced in commit:
> commit 38e68869a2
> Date:   Wed Mar 1 14:30:24 2006 +0000
>
>     Added mdel, del and dest functions to interface.
2018-02-12 17:55:59 +01:00
rlar cd95ad62f2 devices/ndev/ndevdel.c, remove a redundant `return' 2018-02-12 17:55:58 +01:00
rlar efbb7badbc extend commit: spicelib/devcies/*dest.c, rewrite DEVdestroy() functions
rewrite admst/ngspiceMODULEdest.c.xml too, see commit

> commit 4d79617cf1
> Date:   Fri Jul 29 22:22:16 2016 +0200
>
>     spicelib/devcies/*dest.c, rewrite DEVdestroy() functions
2018-02-12 17:55:57 +01:00
rlar 88c50afcd9 parser/inpdpar.c, #6/6, cleanup, introduce find_instance_parameter() 2018-02-03 17:54:15 +01:00
rlar cf0c9eac06 parser/inpdpar.c, #5/6, cleanup, use a local `IFparm *' 2018-02-03 17:54:06 +01:00
rlar f88cfa5d55 parser/inpdpar.c, #4/6, cleanup, use a local `IFdevice *' 2018-02-03 17:53:57 +01:00
rlar 36f3263727 parser/inpdpar.c, #3/6, cleanup, whitespace 2018-02-03 17:53:48 +01:00
rlar 4140af6d29 parser/inpdpar.c, #2/6, cleanup, use a 'switch' 2018-02-03 17:53:38 +01:00
rlar eb86a66146 parser/inpdpar.c, #1/6, cleanup, search, break then process 2018-02-03 17:53:28 +01:00