add airecv flag

This commit is contained in:
David Rose 2003-11-26 22:25:52 +00:00
parent 942ae3e588
commit e7d1b03ab8
7 changed files with 990 additions and 1216 deletions

View File

@ -574,6 +574,17 @@ is_ownsend() const {
return (_flags & F_ownsend) != 0;
}
////////////////////////////////////////////////////////////////////
// Function: DCAtomicField::is_airecv
// Access: Public
// Description: Returns true if the "airecv" flag is set for this
// field, false otherwise.
////////////////////////////////////////////////////////////////////
bool DCAtomicField::
is_airecv() const {
return (_flags & F_airecv) != 0;
}
////////////////////////////////////////////////////////////////////
// Function: DCAtomicField::Constructor
// Access: Public
@ -632,6 +643,9 @@ write(ostream &out, bool brief, int indent_level) const {
if ((_flags & F_ownsend) != 0) {
out << " ownsend";
}
if ((_flags & F_airecv) != 0) {
out << " airecv";
}
out << ";";
if (!brief) {

View File

@ -53,6 +53,7 @@ PUBLISHED:
bool is_clsend() const;
bool is_clrecv() const;
bool is_ownsend() const;
bool is_airecv() const;
public:
DCAtomicField();
@ -99,6 +100,7 @@ public:
F_clsend = 0x0020,
F_clrecv = 0x0040,
F_ownsend = 0x0080,
F_airecv = 0x0100,
};
int _flags; // A bitmask union of any of the above values.

View File

@ -300,27 +300,28 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
*yy_cp = '\0'; \
yy_c_buf_p = yy_cp;
#define YY_NUM_RULES 41
#define YY_END_OF_BUFFER 42
static yyconst short int yy_accept[159] =
#define YY_NUM_RULES 42
#define YY_END_OF_BUFFER 43
static yyconst short int yy_accept[165] =
{ 0,
0, 0, 42, 40, 2, 1, 37, 40, 40, 40,
34, 34, 38, 39, 39, 39, 39, 39, 39, 39,
39, 39, 39, 39, 39, 1, 0, 34, 36, 4,
3, 36, 35, 39, 39, 39, 39, 30, 39, 39,
39, 39, 39, 39, 39, 39, 39, 39, 0, 3,
35, 39, 39, 39, 39, 39, 39, 39, 39, 39,
28, 29, 39, 39, 39, 0, 36, 16, 39, 39,
39, 39, 39, 39, 39, 39, 6, 25, 39, 39,
39, 39, 39, 39, 39, 39, 39, 39, 7, 8,
9, 39, 39, 39, 39, 39, 39, 39, 10, 17,
0, 0, 43, 41, 2, 1, 38, 41, 41, 41,
35, 35, 39, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 40, 40, 40, 1, 0, 35, 37,
4, 3, 37, 36, 40, 40, 40, 40, 40, 30,
40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
0, 3, 36, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 28, 29, 40, 40, 40, 0, 37,
40, 16, 40, 40, 40, 40, 40, 40, 40, 40,
6, 25, 40, 40, 40, 40, 40, 40, 40, 40,
40, 40, 40, 7, 8, 9, 40, 40, 40, 40,
39, 32, 31, 5, 39, 39, 39, 39, 39, 39,
15, 11, 12, 13, 39, 39, 14, 39, 39, 39,
33, 39, 39, 39, 39, 39, 39, 39, 39, 39,
26, 39, 39, 39, 39, 27, 39, 39, 18, 39,
39, 39, 39, 19, 20, 39, 39, 39, 21, 22,
23, 39, 39, 39, 39, 39, 24, 0
40, 40, 40, 10, 34, 17, 40, 32, 31, 5,
40, 40, 40, 40, 40, 40, 15, 11, 12, 13,
40, 40, 14, 40, 40, 40, 33, 40, 40, 40,
40, 40, 40, 40, 40, 40, 26, 40, 40, 40,
40, 27, 40, 40, 18, 40, 40, 40, 40, 19,
20, 40, 40, 40, 21, 22, 23, 40, 40, 40,
40, 40, 24, 0
} ;
static yyconst int yy_ec[256] =
@ -364,110 +365,112 @@ static yyconst int yy_meta[43] =
7, 7
} ;
static yyconst short int yy_base[166] =
static yyconst short int yy_base[172] =
{ 0,
0, 0, 202, 203, 203, 0, 203, 194, 0, 38,
37, 193, 203, 0, 16, 170, 25, 169, 166, 164,
155, 183, 28, 156, 164, 0, 0, 184, 31, 203,
0, 0, 0, 0, 158, 157, 19, 0, 159, 155,
149, 156, 153, 150, 152, 147, 145, 148, 172, 0,
0, 155, 155, 150, 149, 152, 151, 47, 70, 135,
0, 0, 132, 141, 131, 161, 160, 153, 140, 140,
131, 125, 123, 144, 147, 144, 135, 0, 130, 126,
122, 54, 141, 128, 111, 125, 112, 132, 125, 124,
0, 109, 112, 107, 114, 125, 128, 125, 116, 0,
0, 0, 207, 208, 208, 0, 208, 199, 0, 38,
37, 198, 208, 0, 176, 16, 174, 25, 173, 170,
168, 159, 187, 28, 160, 168, 0, 0, 188, 31,
208, 0, 0, 0, 0, 159, 161, 160, 19, 0,
162, 158, 152, 159, 156, 153, 155, 150, 148, 151,
175, 0, 0, 155, 157, 157, 152, 151, 154, 153,
47, 70, 137, 0, 0, 134, 143, 133, 163, 162,
144, 154, 141, 141, 132, 126, 124, 145, 148, 145,
136, 0, 131, 127, 123, 54, 114, 141, 128, 111,
125, 112, 132, 125, 124, 0, 109, 112, 107, 114,
115, 0, 0, 0, 122, 99, 98, 97, 107, 105,
0, 108, 37, 0, 93, 91, 0, 91, 90, 103,
0, 99, 87, 86, 92, 84, 81, 96, 95, 73,
0, 79, 78, 81, 90, 0, 67, 58, 0, 67,
56, 39, 32, 0, 0, 31, 30, 55, 0, 0,
0, 47, 32, 30, 40, 18, 0, 203, 86, 90,
47, 91, 98, 101, 105
125, 128, 125, 116, 0, 0, 115, 0, 0, 0,
122, 99, 98, 97, 107, 105, 0, 108, 37, 0,
93, 91, 0, 91, 90, 103, 0, 99, 87, 86,
92, 84, 81, 96, 95, 73, 0, 79, 78, 81,
90, 0, 67, 58, 0, 67, 56, 39, 32, 0,
0, 31, 30, 55, 0, 0, 0, 47, 32, 30,
40, 18, 0, 208, 86, 90, 47, 91, 98, 101,
105
} ;
static yyconst short int yy_def[166] =
static yyconst short int yy_def[172] =
{ 0,
158, 1, 158, 158, 158, 159, 158, 160, 161, 158,
160, 160, 158, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 159, 161, 160, 161, 158,
163, 29, 164, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 165, 163,
164, 162, 162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 165, 165, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 59, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
164, 1, 164, 164, 164, 165, 164, 166, 167, 164,
166, 166, 164, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 165, 167, 166, 167,
164, 169, 30, 170, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
171, 169, 170, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 171, 171,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 62, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 0, 158, 158,
158, 158, 158, 158, 158
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 0, 164, 164, 164, 164, 164, 164,
164
} ;
static yyconst short int yy_nxt[246] =
static yyconst short int yy_nxt[251] =
{ 0,
4, 5, 6, 7, 4, 8, 9, 10, 11, 12,
12, 12, 12, 12, 12, 12, 13, 14, 14, 14,
14, 15, 16, 17, 14, 18, 14, 19, 14, 20,
14, 21, 22, 14, 23, 24, 14, 25, 14, 14,
14, 14, 30, 32, 35, 31, 38, 39, 45, 49,
36, 29, 46, 54, 55, 49, 74, 124, 75, 157,
156, 76, 77, 96, 155, 97, 154, 153, 98, 99,
152, 151, 150, 149, 125, 148, 147, 33, 78, 78,
78, 78, 78, 78, 78, 78, 26, 146, 26, 26,
26, 26, 26, 28, 28, 34, 34, 34, 50, 145,
15, 16, 17, 18, 14, 19, 14, 20, 14, 21,
14, 22, 23, 14, 24, 25, 14, 26, 14, 14,
14, 14, 31, 33, 37, 32, 40, 41, 47, 51,
38, 30, 48, 57, 58, 51, 78, 130, 79, 163,
162, 80, 81, 101, 161, 102, 160, 159, 103, 104,
158, 157, 156, 155, 131, 154, 153, 34, 82, 82,
82, 82, 82, 82, 82, 82, 27, 152, 27, 27,
27, 27, 27, 29, 29, 35, 35, 35, 52, 151,
50, 50, 50, 50, 50, 51, 51, 67, 144, 67,
143, 142, 141, 140, 139, 138, 137, 136, 135, 134,
133, 132, 131, 130, 129, 128, 127, 126, 123, 122,
121, 120, 119, 118, 117, 116, 115, 114, 113, 112,
111, 110, 109, 108, 107, 106, 105, 104, 103, 102,
101, 100, 95, 94, 93, 92, 91, 90, 89, 88,
87, 86, 85, 84, 83, 158, 158, 82, 81, 80,
79, 73, 72, 71, 70, 69, 68, 66, 65, 64,
63, 62, 61, 60, 59, 58, 57, 56, 53, 52,
32, 48, 47, 44, 43, 42, 41, 40, 37, 32,
52, 52, 52, 52, 52, 53, 53, 70, 150, 70,
149, 148, 147, 146, 145, 144, 143, 142, 141, 140,
139, 138, 137, 136, 135, 134, 133, 132, 129, 128,
127, 126, 125, 124, 123, 122, 121, 120, 119, 118,
117, 116, 115, 114, 113, 112, 111, 110, 109, 108,
107, 106, 105, 100, 99, 98, 97, 96, 95, 94,
93, 92, 91, 90, 89, 88, 87, 164, 164, 86,
85, 84, 83, 77, 76, 75, 74, 73, 72, 71,
69, 68, 67, 66, 65, 64, 63, 62, 61, 60,
59, 56, 55, 54, 33, 50, 49, 46, 45, 44,
27, 158, 3, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158
43, 42, 39, 36, 33, 28, 164, 3, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164
} ;
static yyconst short int yy_chk[246] =
static yyconst short int yy_chk[251] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 10, 11, 15, 10, 17, 17, 23, 29,
15, 161, 23, 37, 37, 29, 58, 113, 58, 156,
155, 58, 58, 82, 154, 82, 153, 152, 82, 82,
148, 147, 146, 143, 113, 142, 141, 11, 59, 59,
59, 59, 59, 59, 59, 59, 159, 140, 159, 159,
159, 159, 159, 160, 160, 162, 162, 162, 163, 138,
1, 1, 10, 11, 16, 10, 18, 18, 24, 30,
16, 167, 24, 39, 39, 30, 61, 119, 61, 162,
161, 61, 61, 86, 160, 86, 159, 158, 86, 86,
154, 153, 152, 149, 119, 148, 147, 11, 62, 62,
62, 62, 62, 62, 62, 62, 165, 146, 165, 165,
165, 165, 165, 166, 166, 168, 168, 168, 169, 144,
163, 163, 163, 163, 163, 164, 164, 165, 137, 165,
135, 134, 133, 132, 130, 129, 128, 127, 126, 125,
124, 123, 122, 120, 119, 118, 116, 115, 112, 110,
109, 108, 107, 106, 105, 101, 99, 98, 97, 96,
95, 94, 93, 92, 90, 89, 88, 87, 86, 85,
84, 83, 81, 80, 79, 77, 76, 75, 74, 73,
72, 71, 70, 69, 68, 67, 66, 65, 64, 63,
60, 57, 56, 55, 54, 53, 52, 49, 48, 47,
46, 45, 44, 43, 42, 41, 40, 39, 36, 35,
28, 25, 24, 22, 21, 20, 19, 18, 16, 12,
169, 169, 169, 169, 169, 170, 170, 171, 143, 171,
141, 140, 139, 138, 136, 135, 134, 133, 132, 131,
130, 129, 128, 126, 125, 124, 122, 121, 118, 116,
115, 114, 113, 112, 111, 107, 104, 103, 102, 101,
100, 99, 98, 97, 95, 94, 93, 92, 91, 90,
89, 88, 87, 85, 84, 83, 81, 80, 79, 78,
77, 76, 75, 74, 73, 72, 71, 70, 69, 68,
67, 66, 63, 60, 59, 58, 57, 56, 55, 54,
51, 50, 49, 48, 47, 46, 45, 44, 43, 42,
41, 38, 37, 36, 29, 26, 25, 23, 22, 21,
8, 3, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158
20, 19, 17, 15, 12, 8, 3, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 164, 164
} ;
static yy_state_type yy_last_accepting_state;
@ -770,7 +773,7 @@ inline void accept() {
col_number += yyleng;
}
#line 775 "lex.yy.c"
#line 778 "lex.yy.c"
/* Macros after this point can all be overridden by user definitions in
* section 1.
@ -918,7 +921,7 @@ YY_MALLOC_DECL
YY_DECL
{
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;
#line 295 "dcLexer.lxx"
@ -927,7 +930,7 @@ YY_DECL
#line 932 "lex.yy.c"
#line 935 "lex.yy.c"
if ( yy_init )
{
@ -978,13 +981,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 159 )
if ( yy_current_state >= 165 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
while ( yy_base[yy_current_state] != 203 );
while ( yy_base[yy_current_state] != 208 );
yy_find_action:
yy_act = yy_accept[yy_current_state];
@ -1290,6 +1293,14 @@ YY_RULE_SETUP
case 34:
YY_RULE_SETUP
#line 479 "dcLexer.lxx"
{
accept();
return KW_AIRECV;
}
YY_BREAK
case 35:
YY_RULE_SETUP
#line 484 "dcLexer.lxx"
{
// An integer number.
accept();
@ -1298,9 +1309,9 @@ YY_RULE_SETUP
return INTEGER;
}
YY_BREAK
case 35:
case 36:
YY_RULE_SETUP
#line 487 "dcLexer.lxx"
#line 492 "dcLexer.lxx"
{
// A hexadecimal integer number.
accept();
@ -1309,9 +1320,9 @@ YY_RULE_SETUP
return INTEGER;
}
YY_BREAK
case 36:
case 37:
YY_RULE_SETUP
#line 495 "dcLexer.lxx"
#line 500 "dcLexer.lxx"
{
// A floating-point number.
accept();
@ -1320,9 +1331,9 @@ YY_RULE_SETUP
return REAL;
}
YY_BREAK
case 37:
case 38:
YY_RULE_SETUP
#line 503 "dcLexer.lxx"
#line 508 "dcLexer.lxx"
{
// Quoted string.
accept();
@ -1330,9 +1341,9 @@ YY_RULE_SETUP
return STRING;
}
YY_BREAK
case 38:
case 39:
YY_RULE_SETUP
#line 510 "dcLexer.lxx"
#line 515 "dcLexer.lxx"
{
// Long hex string.
accept();
@ -1340,9 +1351,9 @@ YY_RULE_SETUP
return HEX_STRING;
}
YY_BREAK
case 39:
case 40:
YY_RULE_SETUP
#line 517 "dcLexer.lxx"
#line 522 "dcLexer.lxx"
{
// Identifier.
accept();
@ -1350,21 +1361,21 @@ YY_RULE_SETUP
return IDENTIFIER;
}
YY_BREAK
case 40:
case 41:
YY_RULE_SETUP
#line 525 "dcLexer.lxx"
#line 530 "dcLexer.lxx"
{
// Send any other printable character as itself.
accept();
return dcyytext[0];
}
YY_BREAK
case 41:
case 42:
YY_RULE_SETUP
#line 531 "dcLexer.lxx"
#line 536 "dcLexer.lxx"
ECHO;
YY_BREAK
#line 1369 "lex.yy.c"
#line 1380 "lex.yy.c"
case YY_STATE_EOF(INITIAL):
yyterminate();
@ -1656,7 +1667,7 @@ static yy_state_type yy_get_previous_state()
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 159 )
if ( yy_current_state >= 165 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@ -1691,11 +1702,11 @@ yy_state_type yy_current_state;
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 159 )
if ( yy_current_state >= 165 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
yy_is_jam = (yy_current_state == 158);
yy_is_jam = (yy_current_state == 164);
return yy_is_jam ? 0 : yy_current_state;
}
@ -1928,11 +1939,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
void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
@ -2250,4 +2256,4 @@ int main()
return 0;
}
#endif
#line 531 "dcLexer.lxx"
#line 536 "dcLexer.lxx"

View File

@ -476,6 +476,11 @@ mol[0-9]+ {
return KW_OWNSEND;
}
"airecv" {
accept();
return KW_AIRECV;
}
{INTEGERNUM} {
// An integer number.
accept();

File diff suppressed because it is too large Load Diff

View File

@ -1,116 +1,43 @@
/* 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,
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc.
# define INTEGER 257
# define REAL 258
# define STRING 259
# define HEX_STRING 260
# define IDENTIFIER 261
# define KW_DCLASS 262
# define KW_INT8 263
# define KW_INT16 264
# define KW_INT32 265
# define KW_INT64 266
# define KW_UINT8 267
# define KW_UINT16 268
# define KW_UINT32 269
# define KW_UINT64 270
# define KW_FLOAT64 271
# define KW_STRING 272
# define KW_BLOB 273
# define KW_BLOB32 274
# define KW_INT8ARRAY 275
# define KW_INT16ARRAY 276
# define KW_INT32ARRAY 277
# define KW_UINT8ARRAY 278
# define KW_UINT16ARRAY 279
# define KW_UINT32ARRAY 280
# define KW_UINT32UINT8ARRAY 281
# define KW_MOL 282
# define KW_REQUIRED 283
# define KW_BROADCAST 284
# define KW_P2P 285
# define KW_RAM 286
# define KW_DB 287
# define KW_CLSEND 288
# define KW_CLRECV 289
# define KW_OWNSEND 290
# define KW_AIRECV 291
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 {
INTEGER = 258,
REAL = 259,
STRING = 260,
HEX_STRING = 261,
IDENTIFIER = 262,
KW_DCLASS = 263,
KW_INT8 = 264,
KW_INT16 = 265,
KW_INT32 = 266,
KW_INT64 = 267,
KW_UINT8 = 268,
KW_UINT16 = 269,
KW_UINT32 = 270,
KW_UINT64 = 271,
KW_FLOAT64 = 272,
KW_STRING = 273,
KW_BLOB = 274,
KW_BLOB32 = 275,
KW_INT8ARRAY = 276,
KW_INT16ARRAY = 277,
KW_INT32ARRAY = 278,
KW_UINT8ARRAY = 279,
KW_UINT16ARRAY = 280,
KW_UINT32ARRAY = 281,
KW_UINT32UINT8ARRAY = 282,
KW_MOL = 283,
KW_REQUIRED = 284,
KW_BROADCAST = 285,
KW_P2P = 286,
KW_RAM = 287,
KW_DB = 288,
KW_CLSEND = 289,
KW_CLRECV = 290,
KW_OWNSEND = 291
};
#endif
#define INTEGER 258
#define REAL 259
#define STRING 260
#define HEX_STRING 261
#define IDENTIFIER 262
#define KW_DCLASS 263
#define KW_INT8 264
#define KW_INT16 265
#define KW_INT32 266
#define KW_INT64 267
#define KW_UINT8 268
#define KW_UINT16 269
#define KW_UINT32 270
#define KW_UINT64 271
#define KW_FLOAT64 272
#define KW_STRING 273
#define KW_BLOB 274
#define KW_BLOB32 275
#define KW_INT8ARRAY 276
#define KW_INT16ARRAY 277
#define KW_INT32ARRAY 278
#define KW_UINT8ARRAY 279
#define KW_UINT16ARRAY 280
#define KW_UINT32ARRAY 281
#define KW_UINT32UINT8ARRAY 282
#define KW_MOL 283
#define KW_REQUIRED 284
#define KW_BROADCAST 285
#define KW_P2P 286
#define KW_RAM 287
#define KW_DB 288
#define KW_CLSEND 289
#define KW_CLRECV 290
#define KW_OWNSEND 291
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
typedef int YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
#endif
extern YYSTYPE dcyylval;
#endif /* not BISON_Y_TAB_H */

View File

@ -78,6 +78,7 @@ dc_cleanup_parser() {
%token KW_CLSEND
%token KW_CLRECV
%token KW_OWNSEND
%token KW_AIRECV
%type <u.dclass> dclass_name
%type <u.atomic> atomic_name
@ -419,6 +420,10 @@ atomic_flags:
| atomic_flags KW_OWNSEND
{
current_atomic->_flags |= DCAtomicField::F_ownsend;
}
| atomic_flags KW_AIRECV
{
current_atomic->_flags |= DCAtomicField::F_airecv;
}
;