Allow CASE statement to contain *only* untyped result clauses or nulls.
authorThomas G. Lockhart <[email protected]>
Mon, 13 Sep 1999 04:21:21 +0000 (04:21 +0000)
committerThomas G. Lockhart <[email protected]>
Mon, 13 Sep 1999 04:21:21 +0000 (04:21 +0000)
 Almost worked before, but forgot one place to check.
 Reported by Tatsuo Ishii.
Still does not do the right thing if inserting into a non-string target
 column. Should look for a type coersion later, but doesn't.

src/backend/parser/parse_expr.c

index 4aecd1f04815c4677e03481954220078889c55b6..955765ffb39f30f45ba5a6dae973e560d6207c58 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.50 1999/07/11 02:04:19 tgl Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.50.2.1 1999/09/13 04:21:21 thomas Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -467,7 +467,8 @@ transformExpr(ParseState *pstate, Node *expr, int precedence)
                     * only bother with conversion if not NULL and
                     * different type...
                     */
-                   if (wtype && (wtype != ptype))
+                   if (wtype && (wtype != UNKNOWNOID)
+                       && (wtype != ptype))
                    {
                        if (can_coerce_type(1, &wtype, &ptype))
                        {