]> granicus.if.org Git - postgresql/blob - src/interfaces/ecpg/test/test_init.pgc
Fixed parser to accept initializing expressions starting with "(".
[postgresql] / src / interfaces / ecpg / test / test_init.pgc
1 exec sql include sqlca;
2
3 int fa() { return 2; }
4 int fb(int x) { return x; }
5 int fc(const char *x) { return *x; }
6 int fd(const char *x,int i) { return (*x)*i; }
7 enum e { ENUM0, ENUM1 };
8 int fe(enum e x) { return (int)x; }
9 struct sa { int member; };
10
11 void sqlmeldung(char *meldung, short trans)
12 {
13 }
14
15 exec sql define NONO 0;
16
17 #define YES 1
18
19 #ifdef _cplusplus
20 namespace N
21 { static const int i=2;
22 };
23 #endif
24
25 int main()
26 { struct sa x,*y;
27 exec sql begin declare section;
28 int a=(int)2;
29 int b=2+2;
30 int b2=(14*7);
31 int d=x.member;
32 int g=fb(2);
33 int i=3^1;
34 int j=1?1:2;
35
36 int e=y->member;
37 int c=10>>2;
38 bool h=2||1; 
39 long iay /* = 1L */ ;
40 long long iax /* = 40000000000LL */ ;
41 exec sql end declare section;
42
43 int f=fa();
44
45 #ifdef _cplusplus
46 exec sql begin declare section;
47 int k=N::i; /* compile error */
48 exec sql end declare section;
49 #endif
50
51 exec sql whenever sqlerror do fa();
52 exec sql select now();
53 exec sql whenever sqlerror do fb(20);
54 exec sql select now();
55 exec sql whenever sqlerror do fc("50");
56 exec sql select now();
57 exec sql whenever sqlerror do fd("50",1);
58 exec sql select now();
59 exec sql whenever sqlerror do fe(ENUM0);
60 exec sql select now();
61 exec sql whenever sqlerror do sqlmeldung(NULL, NONO); 
62 exec sql select now();
63 return 0;
64 }