355d302871339c7103597454b674aba7fc9e4f4c
angie
  Tue Jan 15 12:29:35 2019 -0800
Oops, liftOver -genePred support for -multiple was not implemented -- but there was no error message about that.  Add error message for now, then add -multiple support later.  refs #18855

diff --git src/hg/liftOver/liftOver.c src/hg/liftOver/liftOver.c
index 8bb41a6..46f4b0c 100644
--- src/hg/liftOver/liftOver.c
+++ src/hg/liftOver/liftOver.c
@@ -107,41 +107,56 @@
 /* liftOver - Move annotations from one assembly to another. */
 {
 struct hash *chainHash = newHash(0);		/* Old chromosome name keyed, chromMap valued. */
 FILE *mapped = mustOpen(newFile, "w");
 FILE *unmapped = mustOpen(unmappedFile, "w");
 int errCt;
 
 if (!fileExists(oldFile))
     errAbort("Can't find file: %s\n", oldFile);
 verbose(1, "Reading liftover chains\n");
 readLiftOverMap(mapFile, chainHash);
 verbose(1, "Mapping coordinates\n");
 if (optionExists("gff"))
     {
     fprintf(stderr, "WARNING: -gff is not recommended.\nUse 'ldHgGene -out=<file.gp>' and then 'liftOver -genePred <file.gp>'\n");
+    if (multiple)
+        errAbort("ERROR: -multiple is not supported for -gff.");
     liftOverGff(oldFile, chainHash, minMatch, minBlocks, mapped, unmapped);
     }
 else if (optionExists("genePred"))
+    {
+    if (multiple)
+        errAbort("ERROR: -multiple is not supported for -genePred.");
     liftOverGenePred(oldFile, chainHash, minMatch, minBlocks, fudgeThick,
                         mapped, unmapped);
+    }
 else if (optionExists("sample"))
+    {
+    if (multiple)
+        errAbort("ERROR: -multiple is not supported for -sample.");
     liftOverSample(oldFile, chainHash, minMatch, minBlocks, fudgeThick,
                         mapped, unmapped);
+    }
 else if (optionExists("pslT"))
+    {
+    verbose(1, "Consider using pslMap instead of liftOver for PSL.\n");
+    if (multiple)
+        errAbort("ERROR: -multiple is not supported for -pslT.");
     liftOverPsl(oldFile, chainHash, minMatch, minBlocks, fudgeThick,
                         mapped, unmapped);
+    }
 else if (optionExists("ends"))
     liftOverBedPlusEnds(oldFile, chainHash, minMatch, minBlocks, 
                 minSizeT, minSizeQ, 
                 minChainT, minChainQ, fudgeThick, mapped, unmapped, multiple, noSerial,
 		chainTable, bedPlus, hasBin, tabSep, ends, &errCt);
 else if (optionExists("bedPlus"))
     liftOverBedPlus(oldFile, chainHash, minMatch, minBlocks, 
                 minSizeT, minSizeQ, 
                 minChainT, minChainQ, fudgeThick, mapped, unmapped, multiple, noSerial,
 		chainTable, bedPlus, hasBin, tabSep, &errCt);
 else if (optionExists("positions"))
     liftOverPositions(oldFile, chainHash, minMatch, minBlocks, minSizeT, minSizeQ, 
                 minChainT, minChainQ, fudgeThick, mapped, unmapped, multiple, 
 		chainTable, &errCt);
 else