aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/ecpg/test
diff options
context:
space:
mode:
authorMichael Meskes <meskes@postgresql.org>2010-03-21 10:49:52 +0000
committerMichael Meskes <meskes@postgresql.org>2010-03-21 10:49:52 +0000
commit1d66a1cca1e0ad649beba720466461b4af7fddd4 (patch)
tree5afbde57617f667d1209d39056aea760ad4e900f /src/interfaces/ecpg/test
parent6ad4249b5cde27e914acfa64a9bad268ece61fe2 (diff)
downloadpostgresql-1d66a1cca1e0ad649beba720466461b4af7fddd4.tar.gz
postgresql-1d66a1cca1e0ad649beba720466461b4af7fddd4.zip
ECPG only copied #include statements instead of processing them according to
commandline option "-i". This change fixes this and adds a test case. It also honors #include_next, although this is probably never used for embedded SQL.
Diffstat (limited to 'src/interfaces/ecpg/test')
-rw-r--r--src/interfaces/ecpg/test/compat_informix/rnull.pgc2
-rw-r--r--src/interfaces/ecpg/test/compat_informix/test_informix.pgc2
-rw-r--r--src/interfaces/ecpg/test/expected/compat_informix-rnull.c2
-rw-r--r--src/interfaces/ecpg/test/expected/compat_informix-test_informix.c2
-rw-r--r--src/interfaces/ecpg/test/expected/preproc-strings.c21
-rw-r--r--src/interfaces/ecpg/test/expected/preproc-strings.stderr36
-rw-r--r--src/interfaces/ecpg/test/preproc/Makefile2
-rw-r--r--src/interfaces/ecpg/test/preproc/strings.h1
-rw-r--r--src/interfaces/ecpg/test/preproc/strings.pgc8
9 files changed, 38 insertions, 38 deletions
diff --git a/src/interfaces/ecpg/test/compat_informix/rnull.pgc b/src/interfaces/ecpg/test/compat_informix/rnull.pgc
index aa3e0823c55..a6ad35e3bc9 100644
--- a/src/interfaces/ecpg/test/compat_informix/rnull.pgc
+++ b/src/interfaces/ecpg/test/compat_informix/rnull.pgc
@@ -1,6 +1,6 @@
#include "sqltypes.h"
#include <stdlib.h>
-#
+
$include ../regression;
$define NUMBER 12;
diff --git a/src/interfaces/ecpg/test/compat_informix/test_informix.pgc b/src/interfaces/ecpg/test/compat_informix/test_informix.pgc
index f04954bd90f..da9115e5ba1 100644
--- a/src/interfaces/ecpg/test/compat_informix/test_informix.pgc
+++ b/src/interfaces/ecpg/test/compat_informix/test_informix.pgc
@@ -1,6 +1,6 @@
#include "sqltypes.h"
#include <stdlib.h>
-#
+
$include ../regression;
$define NUMBER 12;
diff --git a/src/interfaces/ecpg/test/expected/compat_informix-rnull.c b/src/interfaces/ecpg/test/expected/compat_informix-rnull.c
index 8ae62933b5a..e90a291e3d9 100644
--- a/src/interfaces/ecpg/test/expected/compat_informix-rnull.c
+++ b/src/interfaces/ecpg/test/expected/compat_informix-rnull.c
@@ -11,7 +11,7 @@
#line 1 "rnull.pgc"
#include "sqltypes.h"
#include <stdlib.h>
-#
+
#line 1 "regression.h"
diff --git a/src/interfaces/ecpg/test/expected/compat_informix-test_informix.c b/src/interfaces/ecpg/test/expected/compat_informix-test_informix.c
index c19c2e5aff6..4d5ffa825b5 100644
--- a/src/interfaces/ecpg/test/expected/compat_informix-test_informix.c
+++ b/src/interfaces/ecpg/test/expected/compat_informix-test_informix.c
@@ -11,7 +11,7 @@
#line 1 "test_informix.pgc"
#include "sqltypes.h"
#include <stdlib.h>
-#
+
#line 1 "regression.h"
diff --git a/src/interfaces/ecpg/test/expected/preproc-strings.c b/src/interfaces/ecpg/test/expected/preproc-strings.c
index b72d9eeadd0..dd13cf36cf0 100644
--- a/src/interfaces/ecpg/test/expected/preproc-strings.c
+++ b/src/interfaces/ecpg/test/expected/preproc-strings.c
@@ -7,8 +7,6 @@
#define ECPGdebug(X,Y) ECPGdebug((X)+100,(Y))
#line 1 "strings.pgc"
-#include <stdlib.h>
-
#line 1 "regression.h"
@@ -18,15 +16,16 @@
#line 3 "strings.pgc"
-
-
/* exec sql begin declare section */
+#line 1 "strings.h"
-#line 6 "strings.pgc"
+#line 5 "strings.pgc"
+
+#line 1 "strings.h"
char * s1 , * s2 , * s3 , * s4 , * s5 , * s6 ;
/* exec sql end declare section */
-#line 7 "strings.pgc"
+#line 5 "strings.pgc"
int main(void)
@@ -34,11 +33,11 @@ int main(void)
ECPGdebug(1, stderr);
{ ECPGconnect(__LINE__, 0, "regress1" , NULL, NULL , NULL, 0); }
-#line 13 "strings.pgc"
+#line 11 "strings.pgc"
{ ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "set standard_conforming_strings to on", ECPGt_EOIT, ECPGt_EORT);}
-#line 15 "strings.pgc"
+#line 13 "strings.pgc"
{ ECPGdo(__LINE__, 0, 1, NULL, 0, ECPGst_normal, "select 'abcdef' , N'abcdef' as foo , E'abc\\bdef' as \"foo\" , U&'d\\0061t\\0061' as U&\"foo\" , U&'d!+000061t!+000061' uescape '!' , $foo$abc$def$foo$", ECPGt_EOIT,
@@ -54,13 +53,13 @@ int main(void)
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L,
ECPGt_char,&(s6),(long)0,(long)1,(1)*sizeof(char),
ECPGt_NO_INDICATOR, NULL , 0L, 0L, 0L, ECPGt_EORT);}
-#line 23 "strings.pgc"
+#line 21 "strings.pgc"
printf("%s %s %s %s %s %s\n", s1, s2, s3, s4, s5, s6);
{ ECPGdisconnect(__LINE__, "CURRENT");}
-#line 27 "strings.pgc"
+#line 25 "strings.pgc"
- exit (0);
+ return (0);
}
diff --git a/src/interfaces/ecpg/test/expected/preproc-strings.stderr b/src/interfaces/ecpg/test/expected/preproc-strings.stderr
index 6dc59b84f59..86dc3d69840 100644
--- a/src/interfaces/ecpg/test/expected/preproc-strings.stderr
+++ b/src/interfaces/ecpg/test/expected/preproc-strings.stderr
@@ -2,41 +2,41 @@
[NO_PID]: sqlca: code: 0, state: 00000
[NO_PID]: ECPGconnect: opening database regress1 on <DEFAULT> port <DEFAULT>
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_execute on line 15: query: set standard_conforming_strings to on; with 0 parameter(s) on connection regress1
+[NO_PID]: ecpg_execute on line 13: query: set standard_conforming_strings to on; with 0 parameter(s) on connection regress1
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_execute on line 15: using PQexec
+[NO_PID]: ecpg_execute on line 13: using PQexec
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_execute on line 15: OK: SET
+[NO_PID]: ecpg_execute on line 13: OK: SET
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_execute on line 17: query: select 'abcdef' , N'abcdef' as foo , E'abc\bdef' as "foo" , U&'d\0061t\0061' as U&"foo" , U&'d!+000061t!+000061' uescape '!' , $foo$abc$def$foo$; with 0 parameter(s) on connection regress1
+[NO_PID]: ecpg_execute on line 15: query: select 'abcdef' , N'abcdef' as foo , E'abc\bdef' as "foo" , U&'d\0061t\0061' as U&"foo" , U&'d!+000061t!+000061' uescape '!' , $foo$abc$def$foo$; with 0 parameter(s) on connection regress1
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_execute on line 17: using PQexec
+[NO_PID]: ecpg_execute on line 15: using PQexec
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_execute on line 17: correctly got 1 tuples with 6 fields
+[NO_PID]: ecpg_execute on line 15: correctly got 1 tuples with 6 fields
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_store_result on line 17: allocating memory for 1 tuples
+[NO_PID]: ecpg_store_result on line 15: allocating memory for 1 tuples
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_get_data on line 17: RESULT: abcdef offset: -1; array: no
+[NO_PID]: ecpg_get_data on line 15: RESULT: abcdef offset: -1; array: no
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_store_result on line 17: allocating memory for 1 tuples
+[NO_PID]: ecpg_store_result on line 15: allocating memory for 1 tuples
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_get_data on line 17: RESULT: abcdef offset: -1; array: no
+[NO_PID]: ecpg_get_data on line 15: RESULT: abcdef offset: -1; array: no
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_store_result on line 17: allocating memory for 1 tuples
+[NO_PID]: ecpg_store_result on line 15: allocating memory for 1 tuples
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_get_data on line 17: RESULT: abcdef offset: -1; array: no
+[NO_PID]: ecpg_get_data on line 15: RESULT: abcdef offset: -1; array: no
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_store_result on line 17: allocating memory for 1 tuples
+[NO_PID]: ecpg_store_result on line 15: allocating memory for 1 tuples
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_get_data on line 17: RESULT: data offset: -1; array: no
+[NO_PID]: ecpg_get_data on line 15: RESULT: data offset: -1; array: no
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_store_result on line 17: allocating memory for 1 tuples
+[NO_PID]: ecpg_store_result on line 15: allocating memory for 1 tuples
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_get_data on line 17: RESULT: data offset: -1; array: no
+[NO_PID]: ecpg_get_data on line 15: RESULT: data offset: -1; array: no
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_store_result on line 17: allocating memory for 1 tuples
+[NO_PID]: ecpg_store_result on line 15: allocating memory for 1 tuples
[NO_PID]: sqlca: code: 0, state: 00000
-[NO_PID]: ecpg_get_data on line 17: RESULT: abc$def offset: -1; array: no
+[NO_PID]: ecpg_get_data on line 15: RESULT: abc$def offset: -1; array: no
[NO_PID]: sqlca: code: 0, state: 00000
[NO_PID]: ecpg_finish: connection regress1 closed
[NO_PID]: sqlca: code: 0, state: 00000
diff --git a/src/interfaces/ecpg/test/preproc/Makefile b/src/interfaces/ecpg/test/preproc/Makefile
index 6d1d6294f54..3bcb63a0bab 100644
--- a/src/interfaces/ecpg/test/preproc/Makefile
+++ b/src/interfaces/ecpg/test/preproc/Makefile
@@ -24,3 +24,5 @@ array_of_struct.c: array_of_struct.pgc ../regression.h
autoprep.c: autoprep.pgc ../regression.h
$(ECPG) -r prepare -o $@ -I$(srcdir) $<
+strings.c: strings.pgc strings.h ../regression.h
+ $(ECPG) -i -o $@ -I$(srcdir) $<
diff --git a/src/interfaces/ecpg/test/preproc/strings.h b/src/interfaces/ecpg/test/preproc/strings.h
new file mode 100644
index 00000000000..4779af9881d
--- /dev/null
+++ b/src/interfaces/ecpg/test/preproc/strings.h
@@ -0,0 +1 @@
+char *s1, *s2, *s3, *s4, *s5, *s6;
diff --git a/src/interfaces/ecpg/test/preproc/strings.pgc b/src/interfaces/ecpg/test/preproc/strings.pgc
index cfea7aa034e..7d853626079 100644
--- a/src/interfaces/ecpg/test/preproc/strings.pgc
+++ b/src/interfaces/ecpg/test/preproc/strings.pgc
@@ -1,9 +1,7 @@
-#include <stdlib.h>
-
-exec sql include ../regression;
+#include "../regression.h"
exec sql begin declare section;
-char *s1, *s2, *s3, *s4, *s5, *s6;
+#include "strings.h"
exec sql end declare section;
int main(void)
@@ -25,5 +23,5 @@ int main(void)
printf("%s %s %s %s %s %s\n", s1, s2, s3, s4, s5, s6);
exec sql disconnect;
- exit (0);
+ return (0);
}