X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b8c631bb299230a18a9d2bbb26d28a426c161a8f..95bcc40c745db8bcd392d06366436afb21964db6:/src/common/dosyacc.c?ds=sidebyside diff --git a/src/common/dosyacc.c b/src/common/dosyacc.c index bbb0d6ee23..14672306db 100644 --- a/src/common/dosyacc.c +++ b/src/common/dosyacc.c @@ -1,10 +1,18 @@ +#if defined(__WIN32__) || defined(__GNUWIN32__) +/* all Win32 compilers can handle C++ comments, and C++ comments + is the only C++ in setup.h */ +#include "wx/setup.h" +#endif + +#if !defined(wxUSE_PROLOGIO) || wxUSE_PROLOGIO + #ifndef lint static char yysccsid[] = "@(#)yaccpar 1.7 (Berkeley) 09/09/90"; #endif #define YYBYACC 1 #line 2 "parser.y" #include "string.h" -#ifdef _MSC_VER +#if defined(_MSC_VER) || defined(__VISAGECPP__) #include #endif #include "wx/expr.h" @@ -25,7 +33,6 @@ int yyback(int *, int); /* You may need to put /DLEX_SCANNER in your makefile * if you're using LEX! - Last change: JS 13 Jul 97 6:12 pm */ #ifdef LEX_SCANNER /* int yyoutput(int); */ @@ -209,7 +216,11 @@ YYSTYPE yyvs[YYSTACKSIZE]; #define yystacksize YYSTACKSIZE #line 118 "parser.y" +#ifdef IDE_INVOKED +#include "../common/doslex.c" +#else #include "../common/lex_yy.c" +#endif /* void yyerror(s) @@ -244,7 +255,10 @@ void yyerror(char *s) #define yywrap() 1 #endif #else -int yywrap() { return 1; } +# if !(defined(__VISAGECPP__) && __IBMC__ >= 400) +/* VA 4.0 thinks this is multiply defined (in lex_yy.c) */ + int yywrap() { return 1; } +# endif #endif #endif #line 247 "y_tab.c" @@ -252,14 +266,15 @@ int yywrap() { return 1; } #define YYACCEPT goto yyaccept #define YYERROR goto yyerrlab int -yyparse() +PROIO_yyparse() { register int yym, yyn, yystate; #if YYDEBUG register char *yys; extern char *getenv(); - if (yys = getenv("YYDEBUG")) + yys = getenv("YYDEBUG"); + if (yys) { yyn = *yys; if (yyn >= '0' && yyn <= '9') @@ -276,7 +291,8 @@ yyparse() *yyssp = yystate = 0; yyloop: - if (yyn = yydefred[yystate]) goto yyreduce; + yyn = yydefred[yystate]; + if (yyn != 0) goto yyreduce; if (yychar < 0) { if ((yychar = yylex()) < 0) yychar = 0; @@ -389,7 +405,7 @@ yyreduce: { case 3: #line 68 "parser.y" -{process_command(proio_cons(make_word(yyvsp[-1].s), NULL)); free(yyvsp[-1].s);} +{process_command(proio_cons(wxmake_word(yyvsp[-1].s), NULL)); free(yyvsp[-1].s);} break; case 4: #line 70 "parser.y" @@ -401,7 +417,7 @@ case 5: break; case 6: #line 76 "parser.y" -{yyval.s = proio_cons(make_word(yyvsp[-3].s), yyvsp[-1].s); free(yyvsp[-3].s);} +{yyval.s = proio_cons(wxmake_word(yyvsp[-3].s), yyvsp[-1].s); free(yyvsp[-3].s);} break; case 7: #line 78 "parser.y" @@ -425,7 +441,7 @@ case 11: break; case 12: #line 93 "parser.y" -{yyval.s = proio_cons(make_word("="), proio_cons(make_word(yyvsp[-2].s), proio_cons(yyvsp[0].s, NULL))); +{yyval.s = proio_cons(wxmake_word("="), proio_cons(wxmake_word(yyvsp[-2].s), proio_cons(yyvsp[0].s, NULL))); free(yyvsp[-2].s); } break; case 13: @@ -434,27 +450,27 @@ case 13: break; case 14: #line 99 "parser.y" -{yyval.s = make_word(yyvsp[0].s); free(yyvsp[0].s);} +{yyval.s = wxmake_word(yyvsp[0].s); free(yyvsp[0].s);} break; case 15: #line 101 "parser.y" -{yyval.s = make_string(yyvsp[0].s); free(yyvsp[0].s);} +{yyval.s = wxmake_string(yyvsp[0].s); free(yyvsp[0].s);} break; case 16: #line 103 "parser.y" -{yyval.s = make_integer(yyvsp[0].s); free(yyvsp[0].s);} +{yyval.s = wxmake_integer(yyvsp[0].s); free(yyvsp[0].s);} break; case 17: #line 105 "parser.y" -{yyval.s = make_real(yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-2].s); free(yyvsp[0].s); } +{yyval.s = wxmake_real(yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-2].s); free(yyvsp[0].s); } break; case 18: #line 107 "parser.y" -{yyval.s = make_exp(yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-2].s); free(yyvsp[0].s); } +{yyval.s = wxmake_exp(yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-2].s); free(yyvsp[0].s); } break; case 19: #line 110 "parser.y" -{yyval.s = make_exp2(yyvsp[-4].s, yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-4].s); free(yyvsp[-2].s); +{yyval.s = wxmake_exp2(yyvsp[-4].s, yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-4].s); free(yyvsp[-2].s); free(yyvsp[0].s); } break; case 20: @@ -518,3 +534,5 @@ yyabort: yyaccept: return (0); } + +#endif /* wxUSE_PROLOGIO */