********> bugfix.82 Author: Bill Ross Date: 2/6/97 Programs: Carnal Severity: Mild Problem: In RMS, reference to a single coordinate set in a STATIC is not parsed, e.g. ref1%10 for the 10th set in: "RMS f1 FIT g1 s1 ref1%10;" The error message "RMS: expected ';'" results. Fix: Make the following change to rms.c: ---------------------------------------------------------------------------------- *** OLD rms.c --- NEW rms.c *************** *** 289,294 if (fit) rmsptr->idunion.rms.refcrdctr = (_REAL *) get(3 * setsize *sizeof(_REAL)); break; case STATIC: { --- 289,295 ----- if (fit) rmsptr->idunion.rms.refcrdctr = (_REAL *) get(3 * setsize *sizeof(_REAL)); + gettok(); break; case STATIC: { *************** *** 299,304 grptr->idunion.group.maxatom) inerr("RMS: static reference set has fewer", " max atom in group"); refcrd = (getstatset(setptr))->crd; rmsptr->idunion.rms.refcrd = refcrd; if (fit) { --- 300,306 ----- grptr->idunion.group.maxatom) inerr("RMS: static reference set has fewer", " max atom in group"); + gettok(); refcrd = (getstatset(setptr))->crd; rmsptr->idunion.rms.refcrd = refcrd; if (fit) { *************** *** 338,344 rmsptr->idunion.rms.crd2a = (_REAL *) get(setsize * sizeof(_REAL)); } - gettok(); if (tok[0] != ';') inerr("RMS: expected ';'",""); } --- 340,345 ----- rmsptr->idunion.rms.crd2a = (_REAL *) get(setsize * sizeof(_REAL)); } if (tok[0] != ';') inerr("RMS: expected ';'",""); } ---------------------------------------------------------------------------------- Temporary workarounds: Split STATIC mdcrd file into individual sets to avoid the need to reference a single set within the STATIC. --