From f108ca7b745fec3aa94bcc88e121f8beb9fabb2e Mon Sep 17 00:00:00 2001 From: "jh9216.park" Date: Wed, 20 Oct 2021 01:57:27 -0400 Subject: [PATCH] Fix parser to handle errors - Because cion java generator does not support 'bundle' type, Make compile errors only for cion option when 'bundle' type is used Change-Id: Iad6f114f356b76ae6b29a2d0797791a444e2922b Signed-off-by: jh9216.park --- idlc/ast/location.hh | 12 +- idlc/ast/parser.cc | 9 +- idlc/ast/parser.h | 4 +- idlc/ast/tidlc.yy | 10 +- idlc/ast/tidlc_l.cpp | 116 +++++++------- idlc/ast/tidlc_y.cpp | 310 +++++++++++++++++++------------------ idlc/ast/tidlc_y.hpp | 14 +- idlc/main.cc | 2 +- tests/build_tests/CMakeLists.txt | 8 +- tests/build_tests/prebuild.sh | 20 ++- tests/build_tests/tidl/ExCion.tidl | 54 +++++++ 11 files changed, 322 insertions(+), 237 deletions(-) create mode 100644 tests/build_tests/tidl/ExCion.tidl diff --git a/idlc/ast/location.hh b/idlc/ast/location.hh index 4e0b449..bd271db 100644 --- a/idlc/ast/location.hh +++ b/idlc/ast/location.hh @@ -31,12 +31,12 @@ // version 2.2 of Bison. /** - ** \file /home/upple/tizen/appfw/tidl/idlc/ast/location.hh + ** \file /home/gogo/work/tidl/idlc/ast/location.hh ** Define the yy::location class. */ -#ifndef YY_YY_HOME_UPPLE_TIZEN_APPFW_TIDL_IDLC_AST_LOCATION_HH_INCLUDED -# define YY_YY_HOME_UPPLE_TIZEN_APPFW_TIDL_IDLC_AST_LOCATION_HH_INCLUDED +#ifndef YY_YY_HOME_GOGO_WORK_TIDL_IDLC_AST_LOCATION_HH_INCLUDED +# define YY_YY_HOME_GOGO_WORK_TIDL_IDLC_AST_LOCATION_HH_INCLUDED # include # include @@ -54,7 +54,7 @@ # endif namespace yy { -#line 58 "/home/upple/tizen/appfw/tidl/idlc/ast/location.hh" +#line 58 "/home/gogo/work/tidl/idlc/ast/location.hh" /// A point in a source file. class position @@ -296,6 +296,6 @@ namespace yy { } } // yy -#line 300 "/home/upple/tizen/appfw/tidl/idlc/ast/location.hh" +#line 300 "/home/gogo/work/tidl/idlc/ast/location.hh" -#endif // !YY_YY_HOME_UPPLE_TIZEN_APPFW_TIDL_IDLC_AST_LOCATION_HH_INCLUDED +#endif // !YY_YY_HOME_GOGO_WORK_TIDL_IDLC_AST_LOCATION_HH_INCLUDED diff --git a/idlc/ast/parser.cc b/idlc/ast/parser.cc index bf76910..f28a11d 100644 --- a/idlc/ast/parser.cc +++ b/idlc/ast/parser.cc @@ -33,8 +33,9 @@ void yylex_destroy(void*); namespace tidl { -Parser::Parser(bool beta_enable) : scanner_(nullptr), error_(false), - beta_enable_(beta_enable) { +Parser::Parser(bool beta_enable, bool cion_enable) + : scanner_(nullptr), error_(false), beta_enable_(beta_enable), + cion_enable_(cion_enable) { yylex_init(&scanner_); } @@ -81,4 +82,8 @@ bool Parser::IsBetaEnabled() { return beta_enable_; } +bool Parser::IsCionEnabled() { + return cion_enable_; +} + } // namespace tidl diff --git a/idlc/ast/parser.h b/idlc/ast/parser.h index 3d74bfe..fa8c1b0 100644 --- a/idlc/ast/parser.h +++ b/idlc/ast/parser.h @@ -27,7 +27,7 @@ namespace tidl { class Parser { public: - Parser(bool beta_enable = false); + Parser(bool beta_enable = false, bool cion_enable = false); ~Parser(); void* Scanner() const { return scanner_; } @@ -37,6 +37,7 @@ class Parser { std::shared_ptr GetDoc(); void ReportError(const std::string& err, unsigned line); bool IsBetaEnabled(); + bool IsCionEnabled(); private: void* scanner_; @@ -44,6 +45,7 @@ class Parser { std::string path_; bool error_; bool beta_enable_; + bool cion_enable_; }; } // namespace tidl diff --git a/idlc/ast/tidlc.yy b/idlc/ast/tidlc.yy index 7fd3848..6c864c8 100644 --- a/idlc/ast/tidlc.yy +++ b/idlc/ast/tidlc.yy @@ -447,8 +447,14 @@ raw_type: container_type { delete $1; } | T_BUNDLE { - $$ = new tidl::BaseType("bundle", $1->GetComments()); - delete $1; + if (ps->IsCionEnabled()) { + ps->ReportError("Cion does not support 'bundle' type", @1.begin.line); + $$ = NULL; + delete $1; + } else { + $$ = new tidl::BaseType("bundle", $1->GetComments()); + delete $1; + } } | T_STRING { $$ = new tidl::BaseType("string", $1->GetComments()); diff --git a/idlc/ast/tidlc_l.cpp b/idlc/ast/tidlc_l.cpp index efb6c55..3d784d2 100644 --- a/idlc/ast/tidlc_l.cpp +++ b/idlc/ast/tidlc_l.cpp @@ -1,6 +1,6 @@ -#line 2 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_l.cpp" +#line 2 "/home/gogo/work/tidl/idlc/ast/tidlc_l.cpp" -#line 4 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_l.cpp" +#line 4 "/home/gogo/work/tidl/idlc/ast/tidlc_l.cpp" #define YY_INT_ALIGNED short int @@ -554,8 +554,8 @@ static const flex_int32_t yy_rule_can_match_eol[47] = #define yymore() yymore_used_but_not_detected #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET -#line 1 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" -#line 2 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 1 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" +#line 2 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" #include #include @@ -572,9 +572,9 @@ static const flex_int32_t yy_rule_can_match_eol[47] = #include "idlc/ast/tidlc_y.hpp" #define YY_USER_ACTION yylloc->columns(yyleng); -#line 576 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_l.cpp" +#line 576 "/home/gogo/work/tidl/idlc/ast/tidlc_l.cpp" -#line 578 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_l.cpp" +#line 578 "/home/gogo/work/tidl/idlc/ast/tidlc_l.cpp" #define INITIAL 0 #define COMMENT 1 @@ -860,15 +860,15 @@ YY_DECL } { -#line 28 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 28 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" -#line 31 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 31 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" std::string comments; std::string values; -#line 872 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_l.cpp" +#line 872 "/home/gogo/work/tidl/idlc/ast/tidlc_l.cpp" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { @@ -939,55 +939,55 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 35 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 35 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { comments += yytext; BEGIN(COMMENT); } YY_BREAK case 2: YY_RULE_SETUP -#line 36 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 36 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { comments += yytext; yylloc->step(); BEGIN(INITIAL); } YY_BREAK case 3: YY_RULE_SETUP -#line 37 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 37 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { comments += yytext; comments += "\n"; BEGIN(INITIAL); } YY_BREAK case 4: /* rule 4 can match eol */ YY_RULE_SETUP -#line 38 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 38 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { comments += yytext; yylloc->step(); BEGIN(INITIAL); } YY_BREAK case 5: /* rule 5 can match eol */ YY_RULE_SETUP -#line 39 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 39 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { comments += yytext; yylloc->lines(yyleng); } YY_BREAK case 6: /* rule 6 can match eol */ YY_RULE_SETUP -#line 40 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 40 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { comments += yytext; yylloc->step(); } YY_BREAK case YY_STATE_EOF(COMMENT): -#line 41 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 41 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return 0; } YY_BREAK case 7: /* rule 7 can match eol */ YY_RULE_SETUP -#line 43 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 43 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { comments += yytext; yylloc->step(); } YY_BREAK case 8: YY_RULE_SETUP -#line 45 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 45 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { BEGIN(VALUE); } YY_BREAK case 9: YY_RULE_SETUP -#line 46 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 46 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { BEGIN(INITIAL); yylval->token = new tidl::Token(values, comments); @@ -997,54 +997,54 @@ YY_RULE_SETUP case 10: /* rule 10 can match eol */ YY_RULE_SETUP -#line 51 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 51 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { values += yytext; yylloc->step(); } YY_BREAK case 11: /* rule 11 can match eol */ YY_RULE_SETUP -#line 53 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 53 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylloc->lines(yyleng); yylloc->step(); } YY_BREAK case 12: /* rule 12 can match eol */ YY_RULE_SETUP -#line 55 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 55 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" ; // ignore all whitespace YY_BREAK case 13: YY_RULE_SETUP -#line 56 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 56 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_COMMA; } YY_BREAK case 14: YY_RULE_SETUP -#line 57 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 57 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_BRACE_OPEN; } YY_BREAK case 15: YY_RULE_SETUP -#line 58 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 58 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_BRACE_CLOSE; } YY_BREAK case 16: YY_RULE_SETUP -#line 59 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 59 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_LEFT; } YY_BREAK case 17: YY_RULE_SETUP -#line 60 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 60 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_RIGHT; } YY_BREAK case 18: YY_RULE_SETUP -#line 61 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 61 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_SEMICOLON; } YY_BREAK case 19: YY_RULE_SETUP -#line 62 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 62 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_VOID; @@ -1052,7 +1052,7 @@ YY_RULE_SETUP YY_BREAK case 20: YY_RULE_SETUP -#line 66 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 66 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_CHAR; @@ -1060,7 +1060,7 @@ YY_RULE_SETUP YY_BREAK case 21: YY_RULE_SETUP -#line 70 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 70 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_SHORT; @@ -1068,7 +1068,7 @@ YY_RULE_SETUP YY_BREAK case 22: YY_RULE_SETUP -#line 74 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 74 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_INT; @@ -1076,7 +1076,7 @@ YY_RULE_SETUP YY_BREAK case 23: YY_RULE_SETUP -#line 78 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 78 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_LONG; @@ -1084,7 +1084,7 @@ YY_RULE_SETUP YY_BREAK case 24: YY_RULE_SETUP -#line 82 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 82 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_FLOAT; @@ -1092,7 +1092,7 @@ YY_RULE_SETUP YY_BREAK case 25: YY_RULE_SETUP -#line 86 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 86 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_DOUBLE; @@ -1100,7 +1100,7 @@ YY_RULE_SETUP YY_BREAK case 26: YY_RULE_SETUP -#line 90 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 90 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_BUNDLE; @@ -1108,7 +1108,7 @@ YY_RULE_SETUP YY_BREAK case 27: YY_RULE_SETUP -#line 94 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 94 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_FILE; @@ -1116,7 +1116,7 @@ YY_RULE_SETUP YY_BREAK case 28: YY_RULE_SETUP -#line 98 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 98 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_STRING; @@ -1124,7 +1124,7 @@ YY_RULE_SETUP YY_BREAK case 29: YY_RULE_SETUP -#line 102 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 102 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_BOOL; @@ -1132,42 +1132,42 @@ YY_RULE_SETUP YY_BREAK case 30: YY_RULE_SETUP -#line 106 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 106 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_IN; } YY_BREAK case 31: YY_RULE_SETUP -#line 107 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 107 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_OUT; } YY_BREAK case 32: YY_RULE_SETUP -#line 108 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 108 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_REF; } YY_BREAK case 33: YY_RULE_SETUP -#line 109 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 109 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_ASYNC; } YY_BREAK case 34: YY_RULE_SETUP -#line 110 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 110 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_DELEGATE; } YY_BREAK case 35: YY_RULE_SETUP -#line 111 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 111 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_META_OPEN; } YY_BREAK case 36: YY_RULE_SETUP -#line 112 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 112 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_META_CLOSE; } YY_BREAK case 37: YY_RULE_SETUP -#line 113 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 113 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_LIST; @@ -1175,7 +1175,7 @@ YY_RULE_SETUP YY_BREAK case 38: YY_RULE_SETUP -#line 117 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 117 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_ARRAY; @@ -1183,7 +1183,7 @@ YY_RULE_SETUP YY_BREAK case 39: YY_RULE_SETUP -#line 121 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 121 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_STRUCTURE; @@ -1191,7 +1191,7 @@ YY_RULE_SETUP YY_BREAK case 40: YY_RULE_SETUP -#line 125 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 125 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_INTERFACE; @@ -1199,7 +1199,7 @@ YY_RULE_SETUP YY_BREAK case 41: YY_RULE_SETUP -#line 129 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 129 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_ID; @@ -1207,7 +1207,7 @@ YY_RULE_SETUP YY_BREAK case 42: YY_RULE_SETUP -#line 133 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 133 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { // Square Bracket yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_SB_OPEN; @@ -1215,7 +1215,7 @@ YY_RULE_SETUP YY_BREAK case 43: YY_RULE_SETUP -#line 137 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 137 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { // Square Bracket yylval->token = new tidl::Token(yytext, comments); return yy::parser::token::T_SB_CLOSE; @@ -1223,20 +1223,20 @@ YY_RULE_SETUP YY_BREAK case 44: YY_RULE_SETUP -#line 141 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 141 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_EQUAL; } YY_BREAK case 45: YY_RULE_SETUP -#line 142 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 142 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" { return yy::parser::token::T_UNKNOWN; } YY_BREAK case 46: YY_RULE_SETUP -#line 144 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 144 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" ECHO; YY_BREAK -#line 1240 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_l.cpp" +#line 1240 "/home/gogo/work/tidl/idlc/ast/tidlc_l.cpp" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(VALUE): yyterminate(); @@ -2441,7 +2441,7 @@ void yyfree (void * ptr , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#line 144 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.ll" +#line 144 "/home/gogo/work/tidl/idlc/ast/tidlc.ll" diff --git a/idlc/ast/tidlc_y.cpp b/idlc/ast/tidlc_y.cpp index 65582e5..d50ff60 100644 --- a/idlc/ast/tidlc_y.cpp +++ b/idlc/ast/tidlc_y.cpp @@ -53,7 +53,7 @@ // First part of user prologue. -#line 1 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 1 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" #include #include @@ -76,7 +76,7 @@ int yylex(yy::parser::semantic_type *, yy::parser::location_type *, void *); #define lex_scanner ps->Scanner() -#line 80 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 80 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" # ifndef YY_CAST # ifdef __cplusplus @@ -121,9 +121,9 @@ static YYLTYPE yyloc_default ; // Second part of user prologue. -#line 125 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 125 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" static void yyerror (const yy::parser::location_type *yylocationp, yy::parser& yyparser, tidl::Parser* ps, const char* msg); -#line 127 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 127 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" #include @@ -390,8 +390,8 @@ static const yytype_int16 yyrline[] = 272, 283, 289, 294, 301, 309, 314, 319, 324, 328, 332, 336, 340, 346, 352, 363, 369, 372, 375, 380, 383, 387, 393, 396, 402, 405, 418, 421, 425, 429, - 433, 437, 441, 445, 449, 453, 457, 461, 467, 474, - 478 + 433, 437, 441, 445, 449, 459, 463, 467, 473, 480, + 484 }; #endif @@ -1239,25 +1239,25 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, switch (yyn) { case 2: -#line 96 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 96 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->SetDoc((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.doc)); } -#line 1247 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1247 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 3: -#line 101 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 101 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).doc) = new tidl::Document(); if ((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.blk) != NULL) ((*yyvalp).doc)->AddBlock((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.blk)); } -#line 1257 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1257 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 4: -#line 106 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 106 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).doc) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.doc); @@ -1270,80 +1270,80 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, } } } -#line 1274 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1274 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 5: -#line 120 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 120 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).blk) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.interf); } -#line 1282 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1282 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 6: -#line 123 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 123 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).blk) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.structure); } -#line 1290 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1290 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 7: -#line 128 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 128 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).structure) = new tidl::Structure((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.elms), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token)->GetComments(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token); } -#line 1301 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1301 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 8: -#line 134 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 134 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"No identifier\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line); ((*yyvalp).structure) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token); } -#line 1311 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1311 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 9: -#line 139 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 139 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"Please check it before an open brace.\"", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line); ((*yyvalp).structure) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token); } -#line 1322 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1322 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 10: -#line 145 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 145 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in structure declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); ((*yyvalp).structure) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token); } -#line 1332 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1332 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 11: -#line 152 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 152 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).elms) = new (std::nothrow) tidl::Elements(); if (((*yyvalp).elms) != nullptr) { ((*yyvalp).elms)->Add((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.elm)); } } -#line 1343 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1343 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 12: -#line 158 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 158 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).elms) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.elms); if ((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.elm) != nullptr) { @@ -1355,68 +1355,68 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, } } } -#line 1359 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1359 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 13: -#line 169 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 169 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in elements declarations.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yyloc).begin.line); ((*yyvalp).elms) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.elms); } -#line 1368 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1368 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 14: -#line 175 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 175 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).elm) = new tidl::Element((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.b_type), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.b_type)->GetComments(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yyloc).begin.line); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.token); } -#line 1378 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1378 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 15: -#line 180 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 180 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"No identifier\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); ((*yyvalp).elm) = NULL; } -#line 1387 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1387 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 16: -#line 184 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 184 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in element declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); ((*yyvalp).elm) = NULL; } -#line 1396 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1396 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 17: -#line 188 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 188 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in element declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); ((*yyvalp).elm) = NULL; } -#line 1405 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1405 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 18: -#line 194 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 194 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).attrs) = new (std::nothrow) tidl::Attributes(); if (((*yyvalp).attrs) != nullptr) { ((*yyvalp).attrs)->Add((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.attr)); } } -#line 1416 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1416 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 19: -#line 200 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 200 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).attrs) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.attrs); if ((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.attr) != nullptr) { @@ -1428,62 +1428,62 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, } } } -#line 1432 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1432 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 20: -#line 211 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 211 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in attributes", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); ((*yyvalp).attrs) = new tidl::Attributes(); } -#line 1441 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1441 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 21: -#line 217 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 217 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).attr) = new tidl::Attribute((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yyloc).begin.line); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1451 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1451 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 22: -#line 222 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 222 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in attribute declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); ((*yyvalp).attr) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1462 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1462 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 23: -#line 228 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 228 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in attribute declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); ((*yyvalp).attr) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token); } -#line 1472 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1472 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 24: -#line 235 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 235 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).interf) = new tidl::Interface((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.decls), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token)->GetComments(), new tidl::Attributes(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token); } -#line 1483 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1483 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 25: -#line 241 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 241 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).interf) = new tidl::Interface((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.decls), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-7)].yystate.yysemantics.yysval.token)->GetComments(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.attrs), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-7)].yystate.yyloc).begin.line); @@ -1492,52 +1492,52 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token); } -#line 1496 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1496 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 26: -#line 249 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 249 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"No identifier\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line); ((*yyvalp).interf) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token); } -#line 1506 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1506 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 27: -#line 254 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 254 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in interface declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line); ((*yyvalp).interf) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token); } -#line 1516 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1516 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 28: -#line 259 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 259 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in interface declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); ((*yyvalp).interf) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token); } -#line 1526 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1526 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 29: -#line 266 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 266 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).decls) = new (std::nothrow) tidl::Declarations(); if (((*yyvalp).decls) != nullptr) { ((*yyvalp).decls)->Add((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.decl)); } } -#line 1537 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1537 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 30: -#line 272 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 272 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).decls) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.decls); if ((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.decl) != nullptr) { @@ -1549,30 +1549,30 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, } } } -#line 1553 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1553 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 31: -#line 283 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 283 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in methods declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); ((*yyvalp).decls) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.decls); } -#line 1562 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1562 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 32: -#line 289 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 289 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).decl) = new tidl::Declaration((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.b_type), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.params), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.b_type)->GetComments(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yyloc).begin.line, tidl::Declaration::MethodType::SYNC); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token); } -#line 1572 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1572 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 33: -#line 294 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 294 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).decl) = new tidl::Declaration((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token)->ToString(), new tidl::BaseType("void", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token)->GetComments()), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.params), @@ -1580,11 +1580,11 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token); } -#line 1584 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1584 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 34: -#line 301 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 301 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).decl) = new tidl::Declaration((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token)->ToString(), new tidl::BaseType("void", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token)->GetComments()), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.params), @@ -1593,97 +1593,97 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token); } -#line 1597 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1597 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 35: -#line 309 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 309 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in method declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token); } -#line 1607 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1607 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 36: -#line 314 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 314 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in method declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token); } -#line 1617 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1617 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 37: -#line 319 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 319 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"No async\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token); } -#line 1627 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1627 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 38: -#line 324 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 324 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"No identifier\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; } -#line 1636 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1636 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 39: -#line 328 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 328 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"No identifier\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; } -#line 1645 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1645 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 40: -#line 332 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 332 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error. \"No identifier\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; } -#line 1654 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1654 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 41: -#line 336 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 336 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in method declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; } -#line 1663 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1663 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 42: -#line 340 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 340 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in method declaration.", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); ((*yyvalp).decl) = NULL; } -#line 1672 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1672 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 43: -#line 346 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 346 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).params) = new tidl::Parameters(); if ((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.param) != nullptr) { ((*yyvalp).params)->Add((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.param)); } } -#line 1683 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1683 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 44: -#line 352 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 352 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).params) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.params); if ((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.param) != nullptr) { @@ -1695,95 +1695,95 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, } } } -#line 1699 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1699 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 45: -#line 363 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 363 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ps->ReportError("syntax error in parameter list", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); ((*yyvalp).params) = new tidl::Parameters(); } -#line 1708 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1708 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 46: -#line 369 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 369 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).direction) = new tidl::Token("in", ""); } -#line 1716 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1716 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 47: -#line 372 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 372 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).direction) = new tidl::Token("out", ""); } -#line 1724 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1724 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 48: -#line 375 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 375 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).direction) = new tidl::Token("ref", ""); } -#line 1732 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1732 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 49: -#line 380 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 380 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).param) = nullptr; } -#line 1740 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1740 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 50: -#line 383 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 383 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).param) = nullptr; delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1749 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1749 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 51: -#line 387 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 387 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).param) = new tidl::Parameter((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.p_type), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1758 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1758 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 52: -#line 393 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 393 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).p_type) = new tidl::ParameterType((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type)); } -#line 1766 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1766 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 53: -#line 396 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 396 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).p_type) = new tidl::ParameterType((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.direction)->ToString()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.direction); } -#line 1775 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1775 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 54: -#line 402 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 402 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type); } -#line 1783 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1783 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 55: -#line 405 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 405 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { if (!ps->IsBetaEnabled()) { ps->ReportError("syntax error. \"No identifier\".", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); @@ -1795,146 +1795,152 @@ yyuserAction (yyRuleNum yyn, int yyrhslen, yyGLRStackItem* yyvsp, delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } } -#line 1799 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1799 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 56: -#line 418 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 418 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type); } -#line 1807 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1807 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 57: -#line 421 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 421 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("void", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1816 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1816 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 58: -#line 425 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 425 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("char", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1825 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1825 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 59: -#line 429 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 429 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("short", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1834 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1834 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 60: -#line 433 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 433 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("int", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1843 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1843 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 61: -#line 437 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 437 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("long", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1852 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1852 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 62: -#line 441 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 441 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("float", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1861 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1861 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 63: -#line 445 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 445 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("double", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1870 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1870 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 64: -#line 449 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 449 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { - ((*yyvalp).b_type) = new tidl::BaseType("bundle", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); - delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); + if (ps->IsCionEnabled()) { + ps->ReportError("Cion does not support 'bundle' type", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yyloc).begin.line); + ((*yyvalp).b_type) = NULL; + delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); + } else { + ((*yyvalp).b_type) = new tidl::BaseType("bundle", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); + delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); + } } -#line 1879 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1885 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 65: -#line 453 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 459 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("string", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1888 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1894 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 66: -#line 457 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 463 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType("bool", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1897 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1903 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 67: -#line 461 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 467 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments(), true); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1906 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1912 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 68: -#line 467 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 473 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).b_type) = new tidl::BaseType((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->GetComments()); ((*yyvalp).b_type)->SetMetaType((YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.b_type)); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token); } -#line 1916 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1922 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 69: -#line 474 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 480 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).token) = new tidl::Token("list", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1925 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1931 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; case 70: -#line 478 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 484 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" { ((*yyvalp).token) = new tidl::Token("array", (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments()); delete (YY_CAST (yyGLRStackItem const *, yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token); } -#line 1934 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1940 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" break; -#line 1938 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 1944 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" default: break; } @@ -3396,7 +3402,7 @@ yyparse (yy::parser& yyparser, tidl::Parser* ps) // User initialization code. yylloc.initialize (); -#line 3400 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 3406 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" if (! yyinitGLRStack (yystackp, YYINITDEPTH)) @@ -3684,7 +3690,7 @@ yypdumpstack (yyGLRStack* yystackp) -#line 484 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 490 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" #include @@ -3696,7 +3702,7 @@ void yy::parser::error(const yy::parser::location_type& l, } -#line 3700 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 3706 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" /*------------------. | Report an error. | @@ -3712,7 +3718,7 @@ yyerror (const yy::parser::location_type *yylocationp, yy::parser& yyparser, tid namespace yy { -#line 3716 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 3722 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" /// Build a parser object. parser::parser (tidl::Parser* ps_yyarg) @@ -3800,4 +3806,4 @@ namespace yy { #endif } // yy -#line 3804 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.cpp" +#line 3810 "/home/gogo/work/tidl/idlc/ast/tidlc_y.cpp" diff --git a/idlc/ast/tidlc_y.hpp b/idlc/ast/tidlc_y.hpp index f636ddf..18ab4a9 100644 --- a/idlc/ast/tidlc_y.hpp +++ b/idlc/ast/tidlc_y.hpp @@ -35,8 +35,8 @@ // Undocumented macros, especially those whose name start with YY_, // are private implementation details. Do not rely on them. -#ifndef YY_YY_HOME_UPPLE_TIZEN_APPFW_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED -# define YY_YY_HOME_UPPLE_TIZEN_APPFW_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED +#ifndef YY_YY_HOME_GOGO_WORK_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED +# define YY_YY_HOME_GOGO_WORK_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED #include #include @@ -177,7 +177,7 @@ #endif namespace yy { -#line 181 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.hpp" +#line 181 "/home/gogo/work/tidl/idlc/ast/tidlc_y.hpp" @@ -190,7 +190,7 @@ namespace yy { /// Symbol semantic values. union semantic_type { -#line 37 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc.yy" +#line 37 "/home/gogo/work/tidl/idlc/ast/tidlc.yy" tidl::Document* doc; tidl::Interface* interf; @@ -209,7 +209,7 @@ namespace yy { tidl::Attribute* attr; tidl::Attributes* attrs; -#line 213 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.hpp" +#line 213 "/home/gogo/work/tidl/idlc/ast/tidlc_y.hpp" }; #else @@ -358,8 +358,8 @@ namespace yy { #endif } // yy -#line 362 "/home/upple/tizen/appfw/tidl/idlc/ast/tidlc_y.hpp" +#line 362 "/home/gogo/work/tidl/idlc/ast/tidlc_y.hpp" -#endif // !YY_YY_HOME_UPPLE_TIZEN_APPFW_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED +#endif // !YY_YY_HOME_GOGO_WORK_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED diff --git a/idlc/main.cc b/idlc/main.cc index d73339a..7a2c287 100644 --- a/idlc/main.cc +++ b/idlc/main.cc @@ -274,7 +274,7 @@ int main(int argc, char** argv) { if (!options) exit(1); - tidl::Parser ps(options->IsBetaEnabled()); + tidl::Parser ps(options->IsBetaEnabled(), options->IsCion()); std::string path(options->GetInput()); if (!ps.ParseFromFile(path)) diff --git a/tests/build_tests/CMakeLists.txt b/tests/build_tests/CMakeLists.txt index 730a9b7..191b2b0 100644 --- a/tests/build_tests/CMakeLists.txt +++ b/tests/build_tests/CMakeLists.txt @@ -31,10 +31,10 @@ SET(TIDL_GEN_SRCS DataPortProxyC.c DataPortStub.cc DataPortStubC.c - ExCionProxy.cc - ExCionProxyC.c - ExCionStub.cc - ExCionStubC.c + ExCionCionProxy.cc + ExCionCionProxyC.c + ExCionCionStub.cc + ExCionCionStubC.c ExProxy.cc ExProxyC.c ExStub.cc diff --git a/tests/build_tests/prebuild.sh b/tests/build_tests/prebuild.sh index 5f4e2c5..10bccf6 100755 --- a/tests/build_tests/prebuild.sh +++ b/tests/build_tests/prebuild.sh @@ -11,6 +11,12 @@ FILES[2]="Ex" FILES[3]="DataPort" FILES[4]="Foo" +FILES_CION[0]="Message" +FILES_CION[1]="Buffer" +FILES_CION[2]="ExCion" +FILES_CION[3]="DataPort" +FILES_CION[4]="Foo" + GenerateTIDL() { for index in ${!FILES[*]}; do echo "Generate ${FILES[index]}" @@ -28,17 +34,23 @@ GenerateTIDL() { OUTPUT="${FILES[index]}StubC" ${TIDLC} -s -n -l C -i ${SCRIPT_DIR}/tidl/${INPUT} -o ${TARGET_DIR}/${OUTPUT} + done + + for index in ${!FILES_CION[*]}; do + echo "Generate ${FILES_CION[index]}" + + INPUT="${FILES_CION[index]}.tidl" - OUTPUT="${FILES[index]}CionProxy" + OUTPUT="${FILES_CION[index]}CionProxy" ${TIDLC} -p -n -c -l C++ -i ${SCRIPT_DIR}/tidl/${INPUT} -o ${TARGET_DIR}/${OUTPUT} - OUTPUT="${FILES[index]}CionStub" + OUTPUT="${FILES_CION[index]}CionStub" ${TIDLC} -s -n -c -l C++ -i ${SCRIPT_DIR}/tidl/${INPUT} -o ${TARGET_DIR}/${OUTPUT} - OUTPUT="${FILES[index]}CionProxyC" + OUTPUT="${FILES_CION[index]}CionProxyC" ${TIDLC} -p -n -c -l C -i ${SCRIPT_DIR}/tidl/${INPUT} -o ${TARGET_DIR}/${OUTPUT} - OUTPUT="${FILES[index]}CionStubC" + OUTPUT="${FILES_CION[index]}CionStubC" ${TIDLC} -s -n -c -l C -i ${SCRIPT_DIR}/tidl/${INPUT} -o ${TARGET_DIR}/${OUTPUT} done } diff --git a/tests/build_tests/tidl/ExCion.tidl b/tests/build_tests/tidl/ExCion.tidl new file mode 100644 index 0000000..fd42ff4 --- /dev/null +++ b/tests/build_tests/tidl/ExCion.tidl @@ -0,0 +1,54 @@ +struct StructTest { + int _Int; + short _Short; + char _Char; + bool _Fg; + string _Str; + float _Float; + double _Double; + long _Long; +} + +struct Student { + string _name; + int _num; + array _extra; +} + +struct MyClass { + string _name; + list _students; +} + +[ca_path="http://tizen.org/privilege/appmanager.launch", cert_path="asdfsd", private_key="12321432353"] +interface School { + void ClassAddedCB(int ret) delegate; + int T1(out bool b); + int T2(out char c); + int T3(out int l); + int T4(ref bool b); + int T5(ref char c); + int T6(ref int l); + int T7(out string str); + int T8(ref string str); + int Test1(out StructTest st); + int Test2(StructTest st); + int Test3(ref StructTest st); + int Test4(out list st); + int Test5(list st); + int Test6(ref list st); + + /// + /// Add class + /// + int AddClass(in MyClass cls); + + /// + /// Add class async + /// + void AddClassAsync(MyClass cls, ClassAddedCB cb) async; + + int GetStudent(in string c_name, in string s_name, out Student student); + int SetAllIds(list> nums); + int SetExtra(string s_name, array extra); +} -- 2.7.4