A column name preceded by a unary "+" operator is considered to be
a column name when computing the collating sequence to be used by
a comparison operator or ORDER BY clause. (CVS 4104)

FossilOrigin-Name: 99a20f6a427b5e0e0a793f59ebca9d17bc633437
diff --git a/src/expr.c b/src/expr.c
index b2ff41a..688d194 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -12,7 +12,7 @@
 ** This file contains routines used for analyzing expressions and
 ** for generating VDBE code that evaluates expressions in SQLite.
 **
-** $Id: expr.c,v 1.298 2007/06/15 16:37:29 danielk1977 Exp $
+** $Id: expr.c,v 1.299 2007/06/20 16:13:23 drh Exp $
 */
 #include "sqliteInt.h"
 #include <ctype.h>
@@ -71,8 +71,10 @@
 CollSeq *sqlite3ExprCollSeq(Parse *pParse, Expr *pExpr){
   CollSeq *pColl = 0;
   if( pExpr ){
+    int op;
     pColl = pExpr->pColl;
-    if( pExpr->op==TK_CAST && !pColl ){
+    op = pExpr->op;
+    if( (op==TK_CAST || op==TK_UPLUS) && !pColl ){
       return sqlite3ExprCollSeq(pParse, pExpr->pLeft);
     }
   }