From 992e7dd4e34a502be008e7f71df80feec27272a1 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Thu, 11 May 2000 04:00:00 +0000 Subject: [PATCH] Oops, plpgsql didn't have the datetime->timestamp and timespan->interval mappings. In fact, it had them backward because it was using the 6.5.* code. Copied them from parser/gram.y, so it is fixed now. Looks like our first 7.0.1 fix. Oops, seems Tom has beat me to it as I was typing this. --- src/pl/plpgsql/src/pl_comp.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/pl/plpgsql/src/pl_comp.c b/src/pl/plpgsql/src/pl_comp.c index a072372d8c..c03d9398d1 100644 --- a/src/pl/plpgsql/src/pl_comp.c +++ b/src/pl/plpgsql/src/pl_comp.c @@ -3,7 +3,7 @@ * procedural language * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_comp.c,v 1.19 2000/04/16 04:16:55 tgl Exp $ + * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_comp.c,v 1.20 2000/05/11 04:00:00 momjian Exp $ * * This software is copyrighted by Jan Wieck - Hamburg. * @@ -1355,18 +1355,22 @@ plpgsql_yyerror(const char *s) static char * xlateSqlType(char *name) { - if (!strcasecmp(name, "int") - || !strcasecmp(name, "integer")) + if ((strcmp(name,"int") == 0) + || (strcmp(name,"integer") == 0)) return "int4"; - else if (!strcasecmp(name, "smallint")) + else if (strcmp(name, "smallint") == 0) return "int2"; - else if (!strcasecmp(name, "real") - || !strcasecmp(name, "float")) + else if ((strcmp(name, "real") == 0) + || (strcmp(name, "float") == 0)) return "float8"; - else if (!strcasecmp(name, "interval")) - return "timespan"; - else if (!strcasecmp(name, "boolean")) + else if (strcmp(name, "decimal") == 0) + return "numeric"; + else if (strcmp(name, "datetime") == 0) + return "timestamp"; + else if (strcmp(name, "timespan") == 0) + return "interval"; + else if (strcmp(name, "boolean") == 0) return "bool"; else return name; -} /* xlateSqlType() */ +} /* xlateSqlType() */ -- 2.11.0