Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
3a81a1a4
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
3a81a1a4
编写于
3月 03, 2000
作者:
M
Michael Meskes
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
*** empty log message ***
上级
85b2875a
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
24 addition
and
30 deletion
+24
-30
doc/src/sgml/ecpg.sgml
doc/src/sgml/ecpg.sgml
+1
-1
src/interfaces/ecpg/ChangeLog
src/interfaces/ecpg/ChangeLog
+4
-0
src/interfaces/ecpg/preproc/pgc.l
src/interfaces/ecpg/preproc/pgc.l
+18
-27
src/interfaces/ecpg/preproc/preproc.y
src/interfaces/ecpg/preproc/preproc.y
+1
-2
未找到文件。
doc/src/sgml/ecpg.sgml
浏览文件 @
3a81a1a4
...
...
@@ -2,7 +2,7 @@
<
DocInfo
>
<
AuthorGroup
>
<
Author
>
<
FirstName
>
Linu
x
</
FirstName
>
<
FirstName
>
Linu
s
</
FirstName
>
<
Surname
>
Tolke
</
Surname
>
</
Author
>
<
Author
>
...
...
src/interfaces/ecpg/ChangeLog
浏览文件 @
3a81a1a4
...
...
@@ -848,5 +848,9 @@ Thu Mar 2 17:42:16 CET 2000
- Print error message if an indicator array is given for input
variables.
Fri Mar 3 10:47:06 CET 2000
- Fixed handling of double quote in C code.
- Set library version to 3.1.0.
- Set ecpg version to 2.7.0.
src/interfaces/ecpg/preproc/pgc.l
浏览文件 @
3a81a1a4
...
...
@@ -12,7 +12,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.5
1 2000/02/22 19:57:10
meskes Exp $
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.5
2 2000/03/03 09:56:03
meskes Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -51,7 +51,7 @@ static int literalalloc; /* current allocated buffer size */
#define startlit() (literalbuf[0] = '\0', literallen = 0)
static void addlit(char *ytext, int yleng);
int
before_comment
;
int
state_before
;
struct _yy_buffer { YY_BUFFER_STATE buffer;
long lineno;
...
...
@@ -268,12 +268,12 @@ cppline {space}*#(.*\\{line_end})*.*
{xcline} { ECHO; }
{xcstart} {
before_comment
= YYSTATE;
state_before
= YYSTATE;
ECHO;
BEGIN(xc);
}
<xc>{xcstop} { ECHO; BEGIN(
before_comment
); }
<xc>{xcstop} { ECHO; BEGIN(
state_before
); }
<xc>{xcinside} { ECHO; }
...
...
@@ -303,7 +303,7 @@ cppline {space}*#(.*\\{line_end})*.*
BEGIN(xh);
startlit();
}
<xh>{xhstop} {
<xh>{xhstop}
{
char* endptr;
BEGIN(SQL);
...
...
@@ -314,45 +314,36 @@ cppline {space}*#(.*\\{line_end})*.*
return ICONST;
}
<SQL>{xqstart} {
{xqstart} {
state_before == YYSTATE;
BEGIN(xq);
startlit();
}
<xq>{xqstop} {
BEGIN(
SQL
);
<xq>{xqstop}
{
BEGIN(
state_before
);
yylval.str = mm_strdup(literalbuf);
return SCONST;
}
<xq>{xqdouble} |
<xq>{xqinside} |
<xq>{xqliteral} {
<xq>{xqliteral}
{
addlit(yytext, yyleng);
}
<xq>{xqcat} { /* ignore */
<xq>{xqcat} {
/* ignore */
}
<SQL>{xdstart} {
{xdstart} {
state_before = YYSTATE;
BEGIN(xd);
startlit();
}
<xd>{xdstop} {
BEGIN(SQL);
yylval.str = mm_strdup(literalbuf);
return CSTRING;
}
<xd>{xdinside} {
addlit(yytext, yyleng);
}
{xdstart} {
BEGIN(xdc);
startlit();
}
<xdc>{xdstop} {
BEGIN(C);
<xd>{xdstop} {
BEGIN(state_before);
yylval.str = mm_strdup(literalbuf);
return CSTRING;
}
<xd
c>{xdcinside}
{
<xd
>{xdinside}
{
addlit(yytext, yyleng);
}
<SQL>{typecast} { return TYPECAST; }
...
...
@@ -365,7 +356,7 @@ cppline {space}*#(.*\\{line_end})*.*
BEGIN C;
return yytext[0];
}
<SQL>{operator} {
<SQL>{operator}
{
if (strcmp((char*)yytext,"!=") == 0)
yylval.str = mm_strdup("<>"); /* compatability */
else
...
...
src/interfaces/ecpg/preproc/preproc.y
浏览文件 @
3a81a1a4
...
...
@@ -5086,6 +5086,7 @@ c_anything: IDENT { $$ = $1; }
| CSTRING { $$ = make3_str(make_str("\""), $1, make_str("\"")); }
| Iconst { $$ = $1; }
| Fconst { $$ = $1; }
| Sconst { $$ = $1; }
| '*' { $$ = make_str("*"); }
| '+' { $$ = make_str("+"); }
| '-' { $$ = make_str("-"); }
...
...
@@ -5112,8 +5113,6 @@ c_anything: IDENT { $$ = $1; }
| VARCHAR { $$ = make_str("varchar"); }
| '[' { $$ = make_str("["); }
| ']' { $$ = make_str("]"); }
/* | '(' { $$ = make_str("("); }
| ')' { $$ = make_str(")"); }*/
| '=' { $$ = make_str("="); }
blockstart : '{' {
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录