I see the TCL file name is pdf_cis_procs.tcl, while the proc name is pdf_cis_fix.
This causes me to wonder if the TCL file pdf_cis_procs.tcl contains more than one TCL proc in it.
If that is the case, then for debugging purposes pull out the problem proc pdf_cis_fix and put it in a separate file like pdf_cis_fix.tcl and rerun mktclindex to see if it shows up in tclIndex.
If that works there is probably a extra { or } or a missing { or } that is confusing the mktclindex command when combining multiple TCL procs in one file.
This is one of a couple reasons we prefer to have one TCL proc per file and have the file name match the TCL proc name.
Don’t really want some syntax problem in one TCL proc to take down other TCL procs sharing the same file.
This post also remind me of a weird PDL compile problem I had a hard time debugging, where there was an extra space or new-line after the last } in the proc, so if the standalone copy will not mktclindex okay then look for extra spaces or new-lines after the last } character.
I’m assuming all the { & } match up so when you place the cursor on the last } and in vi hit % key it takes you to
proc pdf_cis_fix {args} {
Since you posted the code I can do this check and yep the last { doesn’t match up with the one above so look at resolving that.
Here is what the last { matches in your posted file
switch -exact — $mode {
Of course this doesn’t explain how it works in Cloverleaf 6.1.0 and not in 6.1.1, unless other circumstances unnoticed between the 2 versions are coming into play.
Might start by doing a diff between the one that works in 6.1.0 and the one that doesn’t work in 6.1.1.
If the same then decide if it is worth the trouble to bother figuring out.
I have seen with higher versions of cloverleaf more checking is occurring and older versions are sometime more forgiving.
As the higher versions become more strict and watch my back more, it leads me to seeing more of my oversights I was unaware of.
Russ Ross
RussRoss318@gmail.com