Sync to Wine-20050419:

Juan Lang <juan_lang@yahoo.com>
- Always initialize header file name, to prevent "#include (null)"
  statements in generated files.
- Put space between include directive and include file.
- Add proxy/stub options to widl man page.
Vincent Beron <vberon@mecano.gme.usherb.ca>
- Add support for single in idl files.
- Keep types sorted in alphabetical order.
Francois Gouget <fgouget@free.fr>
- Assorted spelling fixes.

svn path=/trunk/; revision=14798
This commit is contained in:
Gé van Geldorp 2005-04-25 10:58:34 +00:00
parent 2b5f3c76a1
commit 753a3c0e99
11 changed files with 3678 additions and 4322 deletions

View file

@ -1714,12 +1714,12 @@ static void init_client(void)
error("Could not open %s for output\n", client_name); error("Could not open %s for output\n", client_name);
print_client("/*** Autogenerated by WIDL %s from %s - Do not edit ***/\n", WIDL_FULLVERSION, input_name); print_client("/*** Autogenerated by WIDL %s from %s - Do not edit ***/\n", WIDL_FULLVERSION, input_name);
print_client("#include<string.h>\n"); print_client("#include <string.h>\n");
print_client("#ifdef _ALPHA_\n"); print_client("#ifdef _ALPHA_\n");
print_client("#include<stdarg.h>\n"); print_client("#include <stdarg.h>\n");
print_client("#endif\n"); print_client("#endif\n");
fprintf(client, "\n"); fprintf(client, "\n");
print_client("#include\"%s\"\n", header_name); print_client("#include \"%s\"\n", header_name);
fprintf(client, "\n"); fprintf(client, "\n");
} }

View file

@ -1,4 +1,3 @@
#line 2 "lex.yy.c"
/* A lexical scanner generated by flex */ /* A lexical scanner generated by flex */
/* Scanner skeleton version: /* Scanner skeleton version:
@ -10,6 +9,7 @@
#define YY_FLEX_MINOR_VERSION 5 #define YY_FLEX_MINOR_VERSION 5
#include <stdio.h> #include <stdio.h>
#include <unistd.h>
/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
@ -23,7 +23,6 @@
#ifdef __cplusplus #ifdef __cplusplus
#include <stdlib.h> #include <stdlib.h>
#include <unistd.h>
/* Use prototypes in function declarations. */ /* Use prototypes in function declarations. */
#define YY_USE_PROTOS #define YY_USE_PROTOS
@ -3088,7 +3087,7 @@ static yyconst short int yy_rule_linenum[18] =
#define YY_MORE_ADJ 0 #define YY_MORE_ADJ 0
#define YY_RESTORE_YY_MORE_OFFSET #define YY_RESTORE_YY_MORE_OFFSET
char *yytext; char *yytext;
#line 1 "parser.l" #line 1 "./parser.l"
#define INITIAL 0 #define INITIAL 0
/* /*
* IDL Compiler * IDL Compiler
@ -3115,7 +3114,7 @@ char *yytext;
#define pp_line 2 #define pp_line 2
#line 36 "parser.l" #line 36 "./parser.l"
#include "config.h" #include "config.h"
@ -3186,7 +3185,7 @@ static UUID* parse_uuid(const char*u)
* The flexer starts here * The flexer starts here
************************************************************************** **************************************************************************
*/ */
#line 3190 "lex.yy.c" #line 3189 "lex.yy.c"
/* Macros after this point can all be overridden by user definitions in /* Macros after this point can all be overridden by user definitions in
* section 1. * section 1.
@ -3337,12 +3336,12 @@ YY_MALLOC_DECL
YY_DECL YY_DECL
{ {
register yy_state_type yy_current_state; register yy_state_type yy_current_state;
register char *yy_cp, *yy_bp; register char *yy_cp = NULL, *yy_bp = NULL;
register int yy_act; register int yy_act;
#line 108 "parser.l" #line 108 "./parser.l"
#line 3346 "lex.yy.c" #line 3345 "lex.yy.c"
if ( yy_init ) if ( yy_init )
{ {
@ -3431,12 +3430,12 @@ do_action: /* This label is used only to access EOF actions. */
case 1: case 1:
YY_RULE_SETUP YY_RULE_SETUP
#line 109 "parser.l" #line 109 "./parser.l"
yy_push_state(pp_line); yy_push_state(pp_line);
YY_BREAK YY_BREAK
case 2: case 2:
YY_RULE_SETUP YY_RULE_SETUP
#line 110 "parser.l" #line 110 "./parser.l"
{ {
int lineno; int lineno;
char *cptr, *fname; char *cptr, *fname;
@ -3459,12 +3458,12 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 3: case 3:
YY_RULE_SETUP YY_RULE_SETUP
#line 129 "parser.l" #line 129 "./parser.l"
yy_push_state(QUOTE); cbufidx = 0; yy_push_state(QUOTE); cbufidx = 0;
YY_BREAK YY_BREAK
case 4: case 4:
YY_RULE_SETUP YY_RULE_SETUP
#line 130 "parser.l" #line 130 "./parser.l"
{ {
yy_pop_state(); yy_pop_state();
yylval.str = get_buffered_cstring(); yylval.str = get_buffered_cstring();
@ -3472,25 +3471,25 @@ YY_RULE_SETUP
} }
YY_BREAK YY_BREAK
case 5: case 5:
#line 136 "parser.l" #line 136 "./parser.l"
case 6: case 6:
YY_RULE_SETUP YY_RULE_SETUP
#line 136 "parser.l" #line 136 "./parser.l"
addcchar(yytext[1]); addcchar(yytext[1]);
YY_BREAK YY_BREAK
case 7: case 7:
YY_RULE_SETUP YY_RULE_SETUP
#line 137 "parser.l" #line 137 "./parser.l"
addcchar('\\'); addcchar(yytext[1]); addcchar('\\'); addcchar(yytext[1]);
YY_BREAK YY_BREAK
case 8: case 8:
YY_RULE_SETUP YY_RULE_SETUP
#line 138 "parser.l" #line 138 "./parser.l"
addcchar(yytext[0]); addcchar(yytext[0]);
YY_BREAK YY_BREAK
case 9: case 9:
YY_RULE_SETUP YY_RULE_SETUP
#line 139 "parser.l" #line 139 "./parser.l"
{ {
yylval.uuid = parse_uuid(yytext); yylval.uuid = parse_uuid(yytext);
return aUUID; return aUUID;
@ -3498,7 +3497,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 10: case 10:
YY_RULE_SETUP YY_RULE_SETUP
#line 143 "parser.l" #line 143 "./parser.l"
{ {
yylval.num = strtoul(yytext, NULL, 0); yylval.num = strtoul(yytext, NULL, 0);
return aHEXNUM; return aHEXNUM;
@ -3506,7 +3505,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 11: case 11:
YY_RULE_SETUP YY_RULE_SETUP
#line 147 "parser.l" #line 147 "./parser.l"
{ {
yylval.num = strtoul(yytext, NULL, 0); yylval.num = strtoul(yytext, NULL, 0);
return aNUM; return aNUM;
@ -3514,38 +3513,38 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 12: case 12:
YY_RULE_SETUP YY_RULE_SETUP
#line 151 "parser.l" #line 151 "./parser.l"
return kw_token(yytext); return kw_token(yytext);
YY_BREAK YY_BREAK
case 13: case 13:
YY_RULE_SETUP YY_RULE_SETUP
#line 152 "parser.l" #line 152 "./parser.l"
line_number++; line_number++;
YY_BREAK YY_BREAK
case 14: case 14:
YY_RULE_SETUP YY_RULE_SETUP
#line 153 "parser.l" #line 153 "./parser.l"
YY_BREAK YY_BREAK
case 15: case 15:
YY_RULE_SETUP YY_RULE_SETUP
#line 154 "parser.l" #line 154 "./parser.l"
return SHL; return SHL;
YY_BREAK YY_BREAK
case 16: case 16:
YY_RULE_SETUP YY_RULE_SETUP
#line 155 "parser.l" #line 155 "./parser.l"
return SHR; return SHR;
YY_BREAK YY_BREAK
case 17: case 17:
YY_RULE_SETUP YY_RULE_SETUP
#line 156 "parser.l" #line 156 "./parser.l"
return yytext[0]; return yytext[0];
YY_BREAK YY_BREAK
case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(QUOTE): case YY_STATE_EOF(QUOTE):
case YY_STATE_EOF(pp_line): case YY_STATE_EOF(pp_line):
#line 157 "parser.l" #line 157 "./parser.l"
{ {
if (import_stack_ptr) { if (import_stack_ptr) {
pop_import(); pop_import();
@ -3556,10 +3555,10 @@ case YY_STATE_EOF(pp_line):
YY_BREAK YY_BREAK
case 18: case 18:
YY_RULE_SETUP YY_RULE_SETUP
#line 164 "parser.l" #line 164 "./parser.l"
ECHO; ECHO;
YY_BREAK YY_BREAK
#line 3563 "lex.yy.c" #line 3562 "lex.yy.c"
case YY_END_OF_BUFFER: case YY_END_OF_BUFFER:
{ {
@ -3935,6 +3934,7 @@ register char *yy_bp;
#endif /* ifndef YY_NO_UNPUT */ #endif /* ifndef YY_NO_UNPUT */
#ifndef YY_NO_INPUT
#ifdef __cplusplus #ifdef __cplusplus
static int yyinput() static int yyinput()
#else #else
@ -4007,7 +4007,7 @@ static int input()
return c; return c;
} }
#endif /* YY_NO_INPUT */
#ifdef YY_USE_PROTOS #ifdef YY_USE_PROTOS
void yyrestart( FILE *input_file ) void yyrestart( FILE *input_file )
@ -4118,11 +4118,6 @@ YY_BUFFER_STATE b;
} }
#ifndef YY_ALWAYS_INTERACTIVE
#ifndef YY_NEVER_INTERACTIVE
extern int isatty YY_PROTO(( int ));
#endif
#endif
#ifdef YY_USE_PROTOS #ifdef YY_USE_PROTOS
void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
@ -4440,7 +4435,7 @@ int main()
return 0; return 0;
} }
#endif #endif
#line 164 "parser.l" #line 164 "./parser.l"
#ifndef yywrap #ifndef yywrap
@ -4566,6 +4561,7 @@ static struct keyword {
/* ... */ /* ... */
{"short", tSHORT}, {"short", tSHORT},
{"signed", tSIGNED}, {"signed", tSIGNED},
{"single", tSINGLE},
{"size_is", tSIZEIS}, {"size_is", tSIZEIS},
{"sizeof", tSIZEOF}, {"sizeof", tSIZEOF},
/* ... */ /* ... */

View file

@ -286,6 +286,7 @@ static struct keyword {
/* ... */ /* ... */
{"short", tSHORT}, {"short", tSHORT},
{"signed", tSIGNED}, {"signed", tSIGNED},
{"single", tSINGLE},
{"size_is", tSIZEIS}, {"size_is", tSIZEIS},
{"sizeof", tSIZEOF}, {"sizeof", tSIZEOF},
/* ... */ /* ... */

View file

@ -169,6 +169,7 @@ static type_t std_uhyper = { "MIDL_uhyper" };
%token tRETVAL %token tRETVAL
%token tSHORT %token tSHORT
%token tSIGNED %token tSIGNED
%token tSINGLE
%token tSIZEIS tSIZEOF %token tSIZEIS tSIZEOF
%token tSMALL %token tSMALL
%token tSOURCE %token tSOURCE
@ -565,9 +566,9 @@ base_type: tBYTE { $$ = make_type(RPC_FC_BYTE, NULL); }
default: break; default: break;
} }
} }
| tUNSIGNED { $$ = make_type(RPC_FC_ULONG, &std_int); | tUNSIGNED { $$ = make_type(RPC_FC_ULONG, &std_int); $$->sign = -1; }
$$->sign = -1; }
| tFLOAT { $$ = make_type(RPC_FC_FLOAT, NULL); } | tFLOAT { $$ = make_type(RPC_FC_FLOAT, NULL); }
| tSINGLE { $$ = make_type(RPC_FC_FLOAT, NULL); }
| tDOUBLE { $$ = make_type(RPC_FC_DOUBLE, NULL); } | tDOUBLE { $$ = make_type(RPC_FC_DOUBLE, NULL); }
| tBOOLEAN { $$ = make_type(RPC_FC_SMALL, &std_bool); } | tBOOLEAN { $$ = make_type(RPC_FC_SMALL, &std_bool); }
| tERRORSTATUST { $$ = make_type(RPC_FC_ERROR_STATUS_T, NULL); } | tERRORSTATUST { $$ = make_type(RPC_FC_ERROR_STATUS_T, NULL); }

View file

@ -1665,9 +1665,9 @@ static void init_server(void)
error("Could not open %s for output\n", server_name); error("Could not open %s for output\n", server_name);
print_server("/*** Autogenerated by WIDL %s from %s - Do not edit ***/\n", WIDL_FULLVERSION, input_name); print_server("/*** Autogenerated by WIDL %s from %s - Do not edit ***/\n", WIDL_FULLVERSION, input_name);
print_server("#include<string.h>\n"); print_server("#include <string.h>\n");
fprintf(server, "\n"); fprintf(server, "\n");
print_server("#include\"%s\"\n", header_name); print_server("#include \"%s\"\n", header_name);
fprintf(server, "\n"); fprintf(server, "\n");
} }

View file

@ -165,7 +165,7 @@ typedef struct tagMSFT_ImpInfo {
/* function description data */ /* function description data */
typedef struct { typedef struct {
/* INT recsize; record size including some xtra stuff */ /* INT recsize; record size including some xtra stuff */
INT DataType; /* data type of the memeber, eg return of function */ INT DataType; /* data type of the member, eg return of function */
INT Flags; /* something to do with attribute flags (LOWORD) */ INT Flags; /* something to do with attribute flags (LOWORD) */
#ifdef WORDS_BIGENDIAN #ifdef WORDS_BIGENDIAN
INT16 funcdescsize; /* size of reconstituted FUNCDESC and related structs */ INT16 funcdescsize; /* size of reconstituted FUNCDESC and related structs */

View file

@ -236,7 +236,7 @@ int main(int argc,char *argv[])
(debuglevel & DEBUGLEVEL_PPTRACE) != 0, (debuglevel & DEBUGLEVEL_PPTRACE) != 0,
(debuglevel & DEBUGLEVEL_PPMSG) != 0 ); (debuglevel & DEBUGLEVEL_PPMSG) != 0 );
if (!header_name && do_header) { if (!header_name) {
header_name = dup_basename(input_name, ".idl"); header_name = dup_basename(input_name, ".idl");
strcat(header_name, ".h"); strcat(header_name, ".h");
} }

View file

@ -31,6 +31,20 @@ Generate a type library.
Define the name of the type library to be generated. Define the name of the type library to be generated.
The default filename is infile.tlb. The default filename is infile.tlb.
.PP .PP
.B Proxy/stub generation options:
.IP \fB-c\fR
Generate client stub.
.IP \fB-C \fIfile\fR
Name of client stub file (default is infile_c.c)
.IP \fB-c\fR
Generate proxy.
.IP \fB-P \fIfile\fR
Name of proxy file (default is infile_p.c)
.IP \fB-s\fR
Generate server stub.
.IP \fB-S \fIfile\fR
Name of server stub file (default is infile_s.c)
.PP
.B Preprocessor options: .B Preprocessor options:
.IP "\fB-I \fIpath\fR" .IP "\fB-I \fIpath\fR"
Add a header search dir to path. Multiple search Add a header search dir to path. Multiple search

View file

@ -66,11 +66,12 @@ enum attr_type
ATTR_DEFAULT, ATTR_DEFAULT,
ATTR_DEFAULTVALUE_EXPR, ATTR_DEFAULTVALUE_EXPR,
ATTR_DEFAULTVALUE_STRING, ATTR_DEFAULTVALUE_STRING,
ATTR_DISPINTERFACE,
ATTR_DLLNAME, ATTR_DLLNAME,
ATTR_DUAL, ATTR_DUAL,
ATTR_ENDPOINT, ATTR_ENDPOINT,
ATTR_ENTRY_STRING,
ATTR_ENTRY_ORDINAL, ATTR_ENTRY_ORDINAL,
ATTR_ENTRY_STRING,
ATTR_EXPLICIT_HANDLE, ATTR_EXPLICIT_HANDLE,
ATTR_HANDLE, ATTR_HANDLE,
ATTR_HELPCONTEXT, ATTR_HELPCONTEXT,
@ -115,8 +116,7 @@ enum attr_type
ATTR_V1ENUM, ATTR_V1ENUM,
ATTR_VARARG, ATTR_VARARG,
ATTR_VERSION, ATTR_VERSION,
ATTR_WIREMARSHAL, ATTR_WIREMARSHAL
ATTR_DISPINTERFACE
}; };
enum expr_type enum expr_type

File diff suppressed because it is too large Load diff

View file

@ -1,287 +1,8 @@
/* A Bison parser, made by GNU Bison 1.875. */ #ifndef BISON_Y_TAB_H
# define BISON_Y_TAB_H
/* Skeleton parser for Yacc-like parsing with Bison, #ifndef YYSTYPE
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc. typedef union {
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
/* Tokens. */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
/* Put the tokens into the symbol table, so that GDB and other debuggers
know about them. */
enum yytokentype {
aIDENTIFIER = 258,
aKNOWNTYPE = 259,
aNUM = 260,
aHEXNUM = 261,
aSTRING = 262,
aUUID = 263,
aEOF = 264,
SHL = 265,
SHR = 266,
tAGGREGATABLE = 267,
tALLOCATE = 268,
tAPPOBJECT = 269,
tARRAYS = 270,
tASYNC = 271,
tASYNCUUID = 272,
tAUTOHANDLE = 273,
tBINDABLE = 274,
tBOOLEAN = 275,
tBROADCAST = 276,
tBYTE = 277,
tBYTECOUNT = 278,
tCALLAS = 279,
tCALLBACK = 280,
tCASE = 281,
tCDECL = 282,
tCHAR = 283,
tCOCLASS = 284,
tCODE = 285,
tCOMMSTATUS = 286,
tCONST = 287,
tCONTEXTHANDLE = 288,
tCONTEXTHANDLENOSERIALIZE = 289,
tCONTEXTHANDLESERIALIZE = 290,
tCONTROL = 291,
tCPPQUOTE = 292,
tDEFAULT = 293,
tDEFAULTVALUE = 294,
tDISPINTERFACE = 295,
tDLLNAME = 296,
tDOUBLE = 297,
tDUAL = 298,
tENDPOINT = 299,
tENTRY = 300,
tENUM = 301,
tERRORSTATUST = 302,
tEXPLICITHANDLE = 303,
tEXTERN = 304,
tFLOAT = 305,
tHANDLE = 306,
tHANDLET = 307,
tHELPCONTEXT = 308,
tHELPFILE = 309,
tHELPSTRING = 310,
tHELPSTRINGCONTEXT = 311,
tHELPSTRINGDLL = 312,
tHIDDEN = 313,
tHYPER = 314,
tID = 315,
tIDEMPOTENT = 316,
tIIDIS = 317,
tIMPLICITHANDLE = 318,
tIMPORT = 319,
tIMPORTLIB = 320,
tIN = 321,
tINCLUDE = 322,
tINLINE = 323,
tINPUTSYNC = 324,
tINT = 325,
tINT64 = 326,
tINTERFACE = 327,
tLENGTHIS = 328,
tLIBRARY = 329,
tLOCAL = 330,
tLONG = 331,
tMETHODS = 332,
tMODULE = 333,
tNONCREATABLE = 334,
tOBJECT = 335,
tODL = 336,
tOLEAUTOMATION = 337,
tOPTIONAL = 338,
tOUT = 339,
tPOINTERDEFAULT = 340,
tPROPERTIES = 341,
tPROPGET = 342,
tPROPPUT = 343,
tPROPPUTREF = 344,
tPTR = 345,
tPUBLIC = 346,
tREADONLY = 347,
tREF = 348,
tRESTRICTED = 349,
tRETVAL = 350,
tSHORT = 351,
tSIGNED = 352,
tSIZEIS = 353,
tSIZEOF = 354,
tSMALL = 355,
tSOURCE = 356,
tSTDCALL = 357,
tSTRING = 358,
tSTRUCT = 359,
tSWITCH = 360,
tSWITCHIS = 361,
tSWITCHTYPE = 362,
tTRANSMITAS = 363,
tTYPEDEF = 364,
tUNION = 365,
tUNIQUE = 366,
tUNSIGNED = 367,
tUUID = 368,
tV1ENUM = 369,
tVARARG = 370,
tVERSION = 371,
tVOID = 372,
tWCHAR = 373,
tWIREMARSHAL = 374,
tPOINTERTYPE = 375,
COND = 376,
CAST = 377,
PPTR = 378,
NEG = 379
};
#endif
#define aIDENTIFIER 258
#define aKNOWNTYPE 259
#define aNUM 260
#define aHEXNUM 261
#define aSTRING 262
#define aUUID 263
#define aEOF 264
#define SHL 265
#define SHR 266
#define tAGGREGATABLE 267
#define tALLOCATE 268
#define tAPPOBJECT 269
#define tARRAYS 270
#define tASYNC 271
#define tASYNCUUID 272
#define tAUTOHANDLE 273
#define tBINDABLE 274
#define tBOOLEAN 275
#define tBROADCAST 276
#define tBYTE 277
#define tBYTECOUNT 278
#define tCALLAS 279
#define tCALLBACK 280
#define tCASE 281
#define tCDECL 282
#define tCHAR 283
#define tCOCLASS 284
#define tCODE 285
#define tCOMMSTATUS 286
#define tCONST 287
#define tCONTEXTHANDLE 288
#define tCONTEXTHANDLENOSERIALIZE 289
#define tCONTEXTHANDLESERIALIZE 290
#define tCONTROL 291
#define tCPPQUOTE 292
#define tDEFAULT 293
#define tDEFAULTVALUE 294
#define tDISPINTERFACE 295
#define tDLLNAME 296
#define tDOUBLE 297
#define tDUAL 298
#define tENDPOINT 299
#define tENTRY 300
#define tENUM 301
#define tERRORSTATUST 302
#define tEXPLICITHANDLE 303
#define tEXTERN 304
#define tFLOAT 305
#define tHANDLE 306
#define tHANDLET 307
#define tHELPCONTEXT 308
#define tHELPFILE 309
#define tHELPSTRING 310
#define tHELPSTRINGCONTEXT 311
#define tHELPSTRINGDLL 312
#define tHIDDEN 313
#define tHYPER 314
#define tID 315
#define tIDEMPOTENT 316
#define tIIDIS 317
#define tIMPLICITHANDLE 318
#define tIMPORT 319
#define tIMPORTLIB 320
#define tIN 321
#define tINCLUDE 322
#define tINLINE 323
#define tINPUTSYNC 324
#define tINT 325
#define tINT64 326
#define tINTERFACE 327
#define tLENGTHIS 328
#define tLIBRARY 329
#define tLOCAL 330
#define tLONG 331
#define tMETHODS 332
#define tMODULE 333
#define tNONCREATABLE 334
#define tOBJECT 335
#define tODL 336
#define tOLEAUTOMATION 337
#define tOPTIONAL 338
#define tOUT 339
#define tPOINTERDEFAULT 340
#define tPROPERTIES 341
#define tPROPGET 342
#define tPROPPUT 343
#define tPROPPUTREF 344
#define tPTR 345
#define tPUBLIC 346
#define tREADONLY 347
#define tREF 348
#define tRESTRICTED 349
#define tRETVAL 350
#define tSHORT 351
#define tSIGNED 352
#define tSIZEIS 353
#define tSIZEOF 354
#define tSMALL 355
#define tSOURCE 356
#define tSTDCALL 357
#define tSTRING 358
#define tSTRUCT 359
#define tSWITCH 360
#define tSWITCHIS 361
#define tSWITCHTYPE 362
#define tTRANSMITAS 363
#define tTYPEDEF 364
#define tUNION 365
#define tUNIQUE 366
#define tUNSIGNED 367
#define tUUID 368
#define tV1ENUM 369
#define tVARARG 370
#define tVERSION 371
#define tVOID 372
#define tWCHAR 373
#define tWIREMARSHAL 374
#define tPOINTERTYPE 375
#define COND 376
#define CAST 377
#define PPTR 378
#define NEG 379
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
#line 106 "parser.y"
typedef union YYSTYPE {
attr_t *attr; attr_t *attr;
expr_t *expr; expr_t *expr;
type_t *type; type_t *type;
@ -293,15 +14,135 @@ typedef union YYSTYPE {
char *str; char *str;
UUID *uuid; UUID *uuid;
unsigned int num; unsigned int num;
} YYSTYPE; } yystype;
/* Line 1248 of yacc.c. */ # define YYSTYPE yystype
#line 298 "y.tab.h"
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_TRIVIAL 1
#endif #endif
# define aIDENTIFIER 257
# define aKNOWNTYPE 258
# define aNUM 259
# define aHEXNUM 260
# define aSTRING 261
# define aUUID 262
# define aEOF 263
# define SHL 264
# define SHR 265
# define tAGGREGATABLE 266
# define tALLOCATE 267
# define tAPPOBJECT 268
# define tARRAYS 269
# define tASYNC 270
# define tASYNCUUID 271
# define tAUTOHANDLE 272
# define tBINDABLE 273
# define tBOOLEAN 274
# define tBROADCAST 275
# define tBYTE 276
# define tBYTECOUNT 277
# define tCALLAS 278
# define tCALLBACK 279
# define tCASE 280
# define tCDECL 281
# define tCHAR 282
# define tCOCLASS 283
# define tCODE 284
# define tCOMMSTATUS 285
# define tCONST 286
# define tCONTEXTHANDLE 287
# define tCONTEXTHANDLENOSERIALIZE 288
# define tCONTEXTHANDLESERIALIZE 289
# define tCONTROL 290
# define tCPPQUOTE 291
# define tDEFAULT 292
# define tDEFAULTVALUE 293
# define tDISPINTERFACE 294
# define tDLLNAME 295
# define tDOUBLE 296
# define tDUAL 297
# define tENDPOINT 298
# define tENTRY 299
# define tENUM 300
# define tERRORSTATUST 301
# define tEXPLICITHANDLE 302
# define tEXTERN 303
# define tFLOAT 304
# define tHANDLE 305
# define tHANDLET 306
# define tHELPCONTEXT 307
# define tHELPFILE 308
# define tHELPSTRING 309
# define tHELPSTRINGCONTEXT 310
# define tHELPSTRINGDLL 311
# define tHIDDEN 312
# define tHYPER 313
# define tID 314
# define tIDEMPOTENT 315
# define tIIDIS 316
# define tIMPLICITHANDLE 317
# define tIMPORT 318
# define tIMPORTLIB 319
# define tIN 320
# define tINCLUDE 321
# define tINLINE 322
# define tINPUTSYNC 323
# define tINT 324
# define tINT64 325
# define tINTERFACE 326
# define tLENGTHIS 327
# define tLIBRARY 328
# define tLOCAL 329
# define tLONG 330
# define tMETHODS 331
# define tMODULE 332
# define tNONCREATABLE 333
# define tOBJECT 334
# define tODL 335
# define tOLEAUTOMATION 336
# define tOPTIONAL 337
# define tOUT 338
# define tPOINTERDEFAULT 339
# define tPROPERTIES 340
# define tPROPGET 341
# define tPROPPUT 342
# define tPROPPUTREF 343
# define tPTR 344
# define tPUBLIC 345
# define tREADONLY 346
# define tREF 347
# define tRESTRICTED 348
# define tRETVAL 349
# define tSHORT 350
# define tSIGNED 351
# define tSINGLE 352
# define tSIZEIS 353
# define tSIZEOF 354
# define tSMALL 355
# define tSOURCE 356
# define tSTDCALL 357
# define tSTRING 358
# define tSTRUCT 359
# define tSWITCH 360
# define tSWITCHIS 361
# define tSWITCHTYPE 362
# define tTRANSMITAS 363
# define tTYPEDEF 364
# define tUNION 365
# define tUNIQUE 366
# define tUNSIGNED 367
# define tUUID 368
# define tV1ENUM 369
# define tVARARG 370
# define tVERSION 371
# define tVOID 372
# define tWCHAR 373
# define tWIREMARSHAL 374
# define tPOINTERTYPE 375
# define COND 376
# define CAST 377
# define PPTR 378
# define NEG 379
extern YYSTYPE yylval; extern YYSTYPE yylval;
#endif /* not BISON_Y_TAB_H */