Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit03f9e5a

Browse files
author
Michael Meskes
committed
Added some more C constructs to the parser.
1 parent157ff4e commit03f9e5a

File tree

3 files changed

+30
-3
lines changed

3 files changed

+30
-3
lines changed

‎src/interfaces/ecpg/ChangeLog

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -982,5 +982,8 @@ Sun Oct 22 15:35:53 CEST 2000
982982

983983
- Fixed typos in descriptor.c.
984984

985+
Wed Oct 25 08:53:07 CEST 2000
986+
987+
- Added some more C constructs to the parser.
985988
- Set ecpg version to 2.8.0.
986989
- Set library version to 3.2.0.

‎src/interfaces/ecpg/preproc/pgc.l

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
*
1313
*
1414
* IDENTIFICATION
15-
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.65 2000/10/17 15:38:25 meskes Exp $
15+
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.66 2000/10/25 07:00:33 meskes Exp $
1616
*
1717
*-------------------------------------------------------------------------
1818
*/
@@ -681,6 +681,17 @@ cppline{space}*#(.*\\{line_end})*.*
681681
<C>"<<"{return(S_LSHIFT); }
682682
<C>"||"{return(S_OR); }
683683
<C>"&&"{return(S_AND); }
684+
<C>"++"{return(S_INC); }
685+
<C>"--"{return(S_DEC); }
686+
<C>"=="{return(S_EQUAL); }
687+
<C>"!="{return(S_NEQUAL); }
688+
<C>"+="{return(S_ADD); }
689+
<C>"-="{return(S_SUB); }
690+
<C>"*="{return(S_MUL); }
691+
<C>"/="{return(S_DIV); }
692+
<C>"%="{return(S_MOD); }
693+
<C>"->*"{return(S_MEMPOINT); }
694+
<C>".*"{return(S_DOTPOINT); }
684695
<C>{other}{return S_ANYTHING; }
685696

686697
<C>{exec_sql}{define}{space_or_nl}*{BEGIN(def_ident); }

‎src/interfaces/ecpg/preproc/preproc.y

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,8 +174,10 @@ make_name(void)
174174
%tokenSQL_VALUESQL_VARSQL_WHENEVER
175175

176176
/* C token*/
177-
%tokenS_ANDS_ANYTHINGS_AUTOS_CONSTS_EXTERNS_LSHIFT
178-
%tokenS_MEMBERS_ORS_REGISTERS_RSHIFTS_STATICS_VOLATILE
177+
%tokenS_ADDS_ANDS_ANYTHINGS_AUTOS_CONSTS_DECS_DIVS_DOTPOINT
178+
%tokenS_EQUALS_EXTERNS_INCS_LSHIFT
179+
%tokenS_MEMPOINTS_MEMBERS_MODS_MULS_NEQUALS_OR
180+
%tokenS_REGISTERS_RSHIFTS_STATICS_SUBS_VOLATILE
179181

180182
/* I need this and don't know where it is defined inside the backend*/
181183
%tokenTYPECAST
@@ -5298,17 +5300,28 @@ c_anything: IDENT { $$ = $1; }
52985300
|'-'{$$ = make_str("-"); }
52995301
|'/'{$$ = make_str("/"); }
53005302
|'%'{$$ = make_str("%"); }
5303+
|NULL_P{$$ = make_str("NULL"); }
5304+
|S_ADD{$$ = make_str("+="); }
53015305
|S_AND{$$ = make_str("&&"); }
53025306
|S_ANYTHING{$$ = make_name(); }
53035307
|S_AUTO{$$ = make_str("auto"); }
53045308
|S_CONST{$$ = make_str("const"); }
5309+
|S_DEC{$$ = make_str("--"); }
5310+
|S_DIV{$$ = make_str("/="); }
5311+
|S_DOTPOINT{$$ = make_str(".*"); }
5312+
|S_EQUAL{$$ = make_str("=="); }
53055313
|S_EXTERN{$$ = make_str("extern"); }
5314+
|S_INC{$$ = make_str("++"); }
53065315
|S_LSHIFT{$$ = make_str("<<"); }
53075316
|S_MEMBER{$$ = make_str("->"); }
5317+
|S_MEMPOINT{$$ = make_str("->*"); }
5318+
|S_MUL{$$ = make_str("*="); }
5319+
|S_NEQUAL{$$ = make_str("!="); }
53085320
|S_OR{$$ = make_str("||"); }
53095321
|S_REGISTER{$$ = make_str("register"); }
53105322
|S_RSHIFT{$$ = make_str(">>"); }
53115323
|S_STATIC{$$ = make_str("static"); }
5324+
|S_SUB{$$ = make_str("-="); }
53125325
|SQL_BOOL{$$ = make_str("bool"); }
53135326
|SQL_ENUM{$$ = make_str("enum"); }
53145327
|SQL_INT{$$ = make_str("int"); }

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp