"trigrat" caught in infinite loop - depending on how you call it



?varlist is supposed to be changed, e.g. by ratvars(), and so
the problem is actually that trigrat  or whatever,  should simply not be 
sensitive
to what was previously on ?varlist.
Maybe that is what you are actually asserting here...

RJF