--- src/calc/CalcRmsd.c.orig	2001-05-27 20:30:09.000000000 -0400
+++ src/calc/CalcRmsd.c	2012-05-12 12:03:51.000000000 -0400
@@ -1025,10 +1025,10 @@
   }
 
   for (propI = 0; propI < 2; propI++) {
-    if (groupNo == 0 || propI == 0 && ! calc1)
+    if (groupNo == 0 || (propI == 0 && ! calc1))
       continue;
 
-    if (groupNo == 0 || propI == 1 && ! calc2)
+    if (groupNo == 0 || (propI == 1 && ! calc2))
       continue;
 
     Report("\nAverage RMSD, dev., min. and max of ");
@@ -1052,8 +1052,8 @@
       Report(" ");
 
       for (groupI2 = 0; groupI2 < groupNo; groupI2++) {
-	if (groupI1 < groupI2 &&
-	    groupInfoP[groupI1].membNo != groupInfoP[groupI2].membNo ||
+	if (((groupI1 < groupI2) &&
+	    (groupInfoP[groupI1].membNo != groupInfoP[groupI2].membNo)) ||
 	    groupInfoP[groupI1].membNo == 0 ||
 	    groupInfoP[groupI2].membNo == 0) {
 	  groupInfoP[groupI2].stat.avg = 0.0f;
--- src/cmdfig/FigUtil.c.orig	2001-05-27 19:42:22.000000000 -0400
+++ src/cmdfig/FigUtil.c	2012-05-12 11:37:16.000000000 -0400
@@ -44,29 +44,29 @@
 } TabEntry;
 
 static TabEntry GreekTab[] = {
-  "ALPHA",   'a',
-  "BETA",    'b',
-  "CHI",     'c',
-  "DELTA",   'd',
-  "EPSILON", 'e',
-  "PHI" ,    'f',
-  "GAMMA",   'g',
-  "ETA",     'h',
-  "IOTA",    'i',
-  "KAPPA",   'k',
-  "LAMBDA",  'l',
-  "MU",      'm',
-  "NU",      'n',
-  "PI",      'p',
-  "THETA",   'q',
-  "RHO",     'r',
-  "SIGMA",   's',
-  "TAU",     't',
-  "UPSILON", 'u',
-  "OMEGA",   'w',
-  "XI",      'x',
-  "PSI",     'y',
-  "ZETA",    'z'
+  {"ALPHA",   'a'},
+  {"BETA",    'b'},
+  {"CHI",     'c'},
+  {"DELTA",   'd'},
+  {"EPSILON", 'e'},
+  {"PHI" ,    'f'},
+  {"GAMMA",   'g'},
+  {"ETA",     'h'},
+  {"IOTA",    'i'},
+  {"KAPPA",   'k'},
+  {"LAMBDA",  'l'},
+  {"MU",      'm'},
+  {"NU",      'n'},
+  {"PI",      'p'},
+  {"THETA",   'q'},
+  {"RHO",     'r'},
+  {"SIGMA",   's'},
+  {"TAU",     't'},
+  {"UPSILON", 'u'},
+  {"OMEGA",   'w'},
+  {"XI",      'x'},
+  {"PSI",     'y'},
+  {"ZETA",    'z'}
 };
 
 int
--- src/cmdio/ExWriteSec.c.orig	1997-02-17 11:09:08.000000000 -0500
+++ src/cmdio/ExWriteSec.c	2012-05-12 11:42:32.000000000 -0400
@@ -250,9 +250,9 @@
 
 	if (neighLStart != NO_RES) {
 	  if (num != neighLEnd + 1 ||
-	      neighNum != neighREnd + 1 && neighNum != neighREnd - 1 ||
-	      neighREnd > neighRStart && neighNum != neighREnd + 1 ||
-	      neighREnd < neighRStart && neighNum != neighREnd - 1) {
+	      (neighNum != neighREnd + 1 && neighNum != neighREnd - 1) ||
+	      (neighREnd > neighRStart && neighNum != neighREnd + 1) ||
+	      (neighREnd < neighRStart && neighNum != neighREnd - 1)) {
 	    writeNeigh(neighLStart, neighLEnd, neighRStart, neighREnd);
 	    neighLStart = NO_RES;
 	  } else {
--- src/data/DataDist.c.orig	1999-10-30 20:28:28.000000000 -0400
+++ src/data/DataDist.c	2012-05-12 12:15:49.000000000 -0400
@@ -116,7 +116,7 @@
   entryP->atom2I = DhAtomGetNumber(atom2P);
 
   if (entryP->res1I > entryP->res2I ||
-      entryP->res1I == entryP->res2I && entryP->atom1I > entryP->atom2I) {
+      (entryP->res1I == entryP->res2I && entryP->atom1I > entryP->atom2I)) {
     t = entryP->res1I;
     entryP->res1I = entryP->res2I;
     entryP->res2I = t;
--- src/data/DataHand.c.orig	2001-05-27 17:07:42.000000000 -0400
+++ src/data/DataHand.c	2012-05-12 12:17:31.000000000 -0400
@@ -2043,8 +2043,8 @@
       groupNum1 = getGroupNum(bondAddP->res1P->molP);
       groupNum2 = getGroupNum(bondAddP->res2P->molP);
       if (atom1P->state == AS_VALID && atom2P->state == AS_VALID &&
-	  (groupNum1 == groupNum && groupNum2 == groupNum ||
-	  groupNum < 0 && groupNum1 != groupNum2))
+	  ((groupNum1 == groupNum && groupNum2 == groupNum) ||
+	  (groupNum < 0 && groupNum1 != groupNum2)))
 	applyF(bondP, atom1P, atom2P, clientData);
     }
     bondAddP = nextBondAddP;
@@ -2367,8 +2367,8 @@
     groupNum1 = getGroupNum(distP->res1P->molP);
     groupNum2 = getGroupNum(distP->res2P->molP);
     if (atom1P->state == AS_VALID && atom2P->state == AS_VALID &&
-	(groupNum1 == groupNum && groupNum2 == groupNum ||
-	groupNum < 0 && groupNum1 != groupNum2))
+	((groupNum1 == groupNum && groupNum2 == groupNum) ||
+	(groupNum < 0 && groupNum1 != groupNum2)))
       applyF(distP, atom1P, atom2P, clientData);
   }
 }
--- src/expr/ExprScan.c.orig	2001-05-27 18:07:12.000000000 -0400
+++ src/expr/ExprScan.c	2012-05-12 12:14:33.000000000 -0400
@@ -221,7 +221,7 @@
 	for (;;) {
 	  if (isdigit(ch)) {
 	    DStrAppChar(StrVal, ch);
-	  } else if (ch == '.' && ExprStr[1] != '.' ||
+	  } else if ((ch == '.' && ExprStr[1] != '.') ||
 	      ch == 'e' || ch == 'E') {
 	    DStrAppChar(StrVal, ch);
 	    isFloat = TRUE;
--- src/motif/MotifDial.c.orig	2001-05-27 17:53:08.000000000 -0400
+++ src/motif/MotifDial.c	2012-05-12 11:48:25.000000000 -0400
@@ -1323,7 +1323,7 @@
 
   switch (type) {
   case PU_CT_ACTIVATE:
-    if (gType == GIZMO_TEXT_FIELD || GIZMO_TEXT)
+    if (gType == (GIZMO_TEXT_FIELD | GIZMO_TEXT))
       XtAddCallback(gizmo, XmNactivateCallback, textActivateCB, infoP);
     else if (gType == GIZMO_BUTTON)
       XtAddCallback(gizmo, XmNactivateCallback, gizmoGenCB, infoP);
--- src/motif/MotifMainW.c.orig	2001-05-27 17:36:10.000000000 -0400
+++ src/motif/MotifMainW.c	2012-05-12 11:49:49.000000000 -0400
@@ -80,8 +80,8 @@
 {
   Window *winP = (Window *) arg;
 
-  return eventP->type == ButtonPress && eventP->xbutton.window == *winP ||
-      eventP->type == Expose && eventP->xexpose.window == *winP;
+  return (eventP->type == ButtonPress && eventP->xbutton.window == *winP) ||
+      (eventP->type == Expose && eventP->xexpose.window == *winP);
 }
 
 static void
--- src/os/GFile.c.orig	2001-06-17 14:59:17.000000000 -0400
+++ src/os/GFile.c	2012-05-12 12:18:32.000000000 -0400
@@ -383,7 +383,7 @@
 {
   if (gf->format == GF_FORMAT_MEMORY)
     return gf->currP == NULL ||
-	gf->currP->nextP == NULL && gf->currPos == gf->currP->len;
+	(gf->currP->nextP == NULL && gf->currPos == gf->currP->len);
   else
     return feof(gf->fp);
 }
--- src/prim/PrimDraw.c.orig	2001-05-27 16:41:49.000000000 -0400
+++ src/prim/PrimDraw.c	2012-05-12 12:06:03.000000000 -0400
@@ -461,7 +461,7 @@
   }
 
   if (partP->paint == RP_ATOM ||
-      partP->paint == RP_ATOM_SMOOTH && partP->polyNo > 0)
+      (partP->paint == RP_ATOM_SMOOTH && partP->polyNo > 0))
     SgSetColor(attrP->colR, attrP->colG, attrP->colB);
 
   if (partP->paint == RP_ATOM_SMOOTH)
--- src/prim/RibbonCalc.c.orig	2001-05-27 16:40:14.000000000 -0400
+++ src/prim/RibbonCalc.c	2012-05-12 12:13:41.000000000 -0400
@@ -907,7 +907,7 @@
     getSplinePoints(partP, ribbonP, ePar, partP->endPar, ePNo + 1,
 	parA + sPNo + mPNo - 1, xA + sPNo + mPNo - 1, dzA + sPNo + mPNo - 1);
 
-  if (partP->style == RS_ROUND && partP->midRad == 0.0f ||
+  if ((partP->style == RS_ROUND && partP->midRad == 0.0f) ||
       BreakInterrupted()) {
     /* draw only one line */
     partP->traceNo = 1;
@@ -1128,15 +1128,15 @@
 	Vec3Copy(partP->traceA[traceI].nvA[pointI], nv);
       }
 
-      if (pointI == 0 && partP->startStyle == RE_SHARP ||
-	  pointI == pointNo - ePNo && partP->endStyle == RE_ARROW)
+      if ((pointI == 0 && partP->startStyle == RE_SHARP) ||
+	  (pointI == pointNo - ePNo && partP->endStyle == RE_ARROW))
 	Vec3Copy(partP->polyA[polyI].xA[traceNo - 1 - traceI], x);
       else if (pointI == pointNo - 1 && partP->endStyle == RE_SHARP)
 	Vec3Copy(partP->polyA[polyI].xA[traceI], x);
     }
 
-    if (pointI == 0 && partP->startStyle == RE_SHARP ||
-	pointI == pointNo - ePNo && partP->endStyle == RE_ARROW) {
+    if ((pointI == 0 && partP->startStyle == RE_SHARP) ||
+	(pointI == pointNo - ePNo && partP->endStyle == RE_ARROW)) {
       Vec3Copy(x, dy);
       Vec3Cross(x, dx);
       Vec3Copy(partP->polyA[polyI].nv, x);
@@ -1327,7 +1327,7 @@
 
   if (! partP->pointValid || prec != partP->prec ||
       startRad != partP->startRad ||
-      partP->style == RS_ROUND && midRad != partP->midRad ||
+      (partP->style == RS_ROUND && midRad != partP->midRad) ||
       endRad != partP->endRad || radChanged) {
     for (i = 0; i < partP->traceNo; i++) {
       free(partP->traceA[i].xA);
--- src/pudev/PuMainW.c.orig	1996-02-06 05:48:36.000000000 -0500
+++ src/pudev/PuMainW.c	2012-05-12 11:50:50.000000000 -0400
@@ -57,7 +57,7 @@
       if (text[0] != LOCK_CHAR)
 	return;
       text++;
-      if (text[0] == '\0' || text[0] == ' ' && text[1] == '\0') {
+      if (text[0] == '\0' || (text[0] == ' ' && text[1] == '\0')) {
 	StatusLocked = FALSE;
 	text = " ";
       }
--- src/tty/TTY.c.orig	2001-05-27 17:13:51.000000000 -0400
+++ src/tty/TTY.c	2012-05-12 11:47:32.000000000 -0400
@@ -164,7 +164,7 @@
 void
 PuTTYSetTextField(PuTextFieldChoice fieldChoice, char *text)
 {
-  if (text[0] == '\0' || text[0] == ' ' && text[1] == '\0')
+  if (text[0] == '\0' || (text[0] == ' ' && text[1] == '\0'))
     return;
 
   switch (fieldChoice) {
--- tools/src/IsoSurface.c.orig	2001-07-04 19:26:21.000000000 -0400
+++ tools/src/IsoSurface.c	2012-05-12 12:24:17.000000000 -0400
@@ -158,7 +158,7 @@
 static BOOL
 equalPair(int i00, int i01, int i10, int i11)
 {
-  return i00 == i10 && i01 == i11 || i00 == i11 && i01 == i10;
+  return (i00 == i10 && i01 == i11) || (i00 == i11 && i01 == i10);
 }
 
 static int
