summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkarl <karl>2014-06-24 14:38:06 +0000
committerkarl <karl>2014-06-24 14:38:06 +0000
commit3c5742a7cfbe3b1a02a8eb4225e83b207e9dfb45 (patch)
tree7644b6a7fc00f9093d1920dbef5fff21297c1dfc
parent0545e3979ae49808d0bd34e49f6ab83014926cbb (diff)
downloadtog-pegasus-3c5742a7cfbe3b1a02a8eb4225e83b207e9dfb45.zip
tog-pegasus-3c5742a7cfbe3b1a02a8eb4225e83b207e9dfb45.tar.gz
tog-pegasus-3c5742a7cfbe3b1a02a8eb4225e83b207e9dfb45.tar.xz
BUG#: 9652
TITLE: Qualifier type reference causes an error in compiler DESCRIPTION: Corrected grammar to allow Reference as a qualifier type name in addition to being a keyword. Also removed comment around the qualifier type declaration in qualifiers.mof
-rw-r--r--Schemas/CIM236/DMTF/qualifiers.mof4
-rw-r--r--src/Pegasus/Compiler/cimmof.y29
-rw-r--r--src/Pegasus/Compiler/cimmof_tab.cpp346
3 files changed, 197 insertions, 182 deletions
diff --git a/Schemas/CIM236/DMTF/qualifiers.mof b/Schemas/CIM236/DMTF/qualifiers.mof
index 7145418..f9b7447 100644
--- a/Schemas/CIM236/DMTF/qualifiers.mof
+++ b/Schemas/CIM236/DMTF/qualifiers.mof
@@ -152,8 +152,8 @@ Qualifier PUnit : string = null,
Qualifier Read : boolean = true,
Scope(property);
-//Qualifier Reference : string = null,
-// Scope(property);
+Qualifier Reference : string = null,
+ Scope(property);
Qualifier Required : boolean = false,
Scope(property, reference, method, parameter),
diff --git a/src/Pegasus/Compiler/cimmof.y b/src/Pegasus/Compiler/cimmof.y
index 7c8dd30..c08e8c6 100644
--- a/src/Pegasus/Compiler/cimmof.y
+++ b/src/Pegasus/Compiler/cimmof.y
@@ -484,7 +484,7 @@ parameter: qualifierList parameterType parameterName array
cimmofParser *cp = cimmofParser::Instance();
// Create new parameter with name, type, isArray, array, referenceClassName
- if ($4 == -1)
+ if ($4 == -1)
{
p = cp->newParameter(*$3, $2, false, 0, g_referenceClassName);
}
@@ -635,7 +635,7 @@ propertyName: TOK_SIMPLE_IDENTIFIER
NOTE: array type is ival (int) which allows positive and negative.
The Empty is actually -1
*/
-array:
+array:
// array syntax with [ number ]
TOK_LEFTSQUAREBRACKET TOK_POSITIVE_DECIMAL_VALUE TOK_RIGHTSQUAREBRACKET
{
@@ -760,7 +760,7 @@ constantValue:
{$$ = $1;}
| TOK_NULL_VALUE
{
- g_typedInitializerValue.nonNullParserType =
+ g_typedInitializerValue.nonNullParserType =
strValTypeNS::NULL_VALUE;
$$ = new String(String::EMPTY);
} ;
@@ -862,7 +862,7 @@ stringValue: TOK_STRING_VALUE
/*
arrayInitializer = "{" constantValue*( "," constantValue)"}"
- Intiialize array of comma-separated constant values
+ Intiialize array of comma-separated constant values
Used in: Initializer, typedInitializer, typedQualifierParameter
Result: strVal
@@ -968,7 +968,7 @@ keyValuePairList: keyValuePair
/*
Parse one keybinding and append to global KeyBindingArray. calcualates
- keyBinding type from first char of string.
+ keyBinding type from first char of string.
*/
keyValuePair: keyValuePairName TOK_EQUAL initializer
{
@@ -1009,7 +1009,7 @@ alias: TOK_AS aliasIdentifier
g_currentAliasDecl.getCString());
}
- | /* empty */
+ | /* empty */
{
$$ = new String(String::EMPTY);
g_currentAliasDecl = String::EMPTY;
@@ -1227,7 +1227,7 @@ scope_begin: TOK_COMMA TOK_SCOPE TOK_LEFTPAREN
} ;
/* aggregate the keywords used to define scope */
-metaElements:
+metaElements:
metaElement
{ /* empty */
$$ = $1;
@@ -1303,13 +1303,13 @@ explicitFlavor: TOK_ENABLEOVERRIDE
flavor: overrideFlavors
{
- $$ = &g_flavor;
+ $$ = &g_flavor;
}
| /* empty */
- {
+ {
g_flavor = CIMFlavor (CIMFlavor::NONE);
$$ = &g_flavor;
- } ;
+ } ;
overrideFlavors: explicitFlavor
| overrideFlavors explicitFlavor ;
@@ -1402,9 +1402,16 @@ qualifierName: TOK_ASSOCIATION
free(metaQualifierName);
metaQualifierName = 0;
}
+
+ // Added because "Reference" is a documented qualifier in addition to
+ // being a keyword in the syntax.
+ | TOK_REFERENCE
+ {
+ g_flavor = CIMFlavor (CIMFlavor::NONE);
+ $$ = new String("Reference");
+ }
| TOK_SIMPLE_IDENTIFIER
{
- // KS Probably hangover for case when no scope supplied
g_flavor = CIMFlavor (CIMFlavor::NONE);
$$ = $1;
};
diff --git a/src/Pegasus/Compiler/cimmof_tab.cpp b/src/Pegasus/Compiler/cimmof_tab.cpp
index cae3d19..8fae977 100644
--- a/src/Pegasus/Compiler/cimmof_tab.cpp
+++ b/src/Pegasus/Compiler/cimmof_tab.cpp
@@ -626,7 +626,7 @@ union yyalloc
#endif
/* YYFINAL -- State number of the termination state. */
-#define YYFINAL 24
+#define YYFINAL 25
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 282
@@ -635,9 +635,9 @@ union yyalloc
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 84
/* YYNRULES -- Number of rules. */
-#define YYNRULES 161
+#define YYNRULES 162
/* YYNRULES -- Number of states. */
-#define YYNSTATES 239
+#define YYNSTATES 240
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
@@ -704,8 +704,8 @@ static const yytype_uint16 yyprhs[] =
325, 327, 331, 333, 335, 337, 339, 341, 343, 344,
346, 349, 351, 353, 355, 357, 359, 361, 363, 365,
367, 369, 371, 373, 375, 377, 379, 381, 385, 386,
- 388, 390, 394, 398, 400, 402, 404, 408, 412, 414,
- 415, 417
+ 388, 390, 394, 398, 400, 402, 404, 406, 410, 414,
+ 416, 417, 419
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
@@ -751,8 +751,9 @@ static const yytype_int16 yyrhs[] =
-1, 27, -1, 22, -1, 15, -1, 18, -1, 19,
-1, 144, 145, 57, -1, -1, 40, -1, 146, -1,
145, 11, 146, -1, 147, 148, 138, -1, 6, -1,
- 36, -1, 61, -1, 39, 102, 56, -1, 39, 42,
- 56, -1, 107, -1, -1, 61, -1, 62, -1
+ 36, -1, 53, -1, 61, -1, 39, 102, 56, -1,
+ 39, 42, 56, -1, 107, -1, -1, 61, -1, 62,
+ -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
@@ -773,8 +774,8 @@ static const yytype_uint16 yyrline[] =
1286, 1287, 1296, 1298, 1299, 1300, 1301, 1304, 1309, 1314,
1315, 1320, 1321, 1322, 1323, 1324, 1327, 1328, 1329, 1330,
1331, 1332, 1333, 1334, 1335, 1338, 1340, 1350, 1352, 1356,
- 1360, 1362, 1370, 1389, 1398, 1405, 1415, 1422, 1427, 1434,
- 1440, 1443
+ 1360, 1362, 1370, 1389, 1398, 1408, 1413, 1422, 1429, 1434,
+ 1441, 1447, 1450
};
#endif
@@ -859,8 +860,8 @@ static const yytype_uint8 yyr1[] =
136, 136, 137, 137, 137, 137, 137, 138, 138, 139,
139, 140, 140, 140, 140, 140, 141, 141, 141, 141,
141, 141, 141, 141, 141, 142, 142, 143, 143, 144,
- 145, 145, 146, 147, 147, 147, 148, 148, 148, 148,
- 149, 150
+ 145, 145, 146, 147, 147, 147, 147, 148, 148, 148,
+ 148, 149, 150
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
@@ -881,8 +882,8 @@ static const yytype_uint8 yyr2[] =
1, 3, 1, 1, 1, 1, 1, 1, 0, 1,
2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 3, 0, 1,
- 1, 3, 3, 1, 1, 1, 3, 3, 1, 0,
- 1, 1
+ 1, 3, 3, 1, 1, 1, 1, 3, 3, 1,
+ 0, 1, 1
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -891,88 +892,88 @@ static const yytype_uint8 yyr2[] =
static const yytype_uint8 yydefact[] =
{
148, 149, 0, 0, 0, 2, 148, 7, 0, 8,
- 0, 5, 97, 98, 6, 0, 0, 0, 160, 0,
- 153, 154, 155, 0, 1, 3, 148, 9, 148, 91,
- 0, 0, 0, 150, 159, 0, 0, 0, 105, 0,
- 148, 16, 19, 18, 20, 0, 148, 94, 0, 11,
- 89, 0, 0, 147, 0, 0, 158, 128, 73, 100,
- 0, 161, 0, 134, 144, 135, 145, 146, 139, 141,
- 143, 137, 133, 138, 140, 142, 136, 45, 131, 132,
- 0, 118, 0, 15, 0, 17, 36, 0, 0, 0,
- 0, 0, 95, 0, 0, 13, 89, 151, 67, 61,
- 69, 66, 58, 65, 64, 60, 75, 68, 70, 0,
- 55, 57, 59, 63, 62, 71, 0, 0, 123, 122,
- 124, 125, 126, 129, 152, 127, 99, 101, 0, 47,
- 0, 0, 0, 116, 110, 109, 111, 114, 115, 112,
- 113, 0, 107, 14, 148, 0, 34, 32, 0, 42,
- 22, 45, 93, 0, 90, 88, 0, 10, 92, 0,
- 74, 72, 157, 156, 130, 0, 44, 0, 103, 106,
- 0, 0, 102, 0, 104, 0, 26, 0, 24, 21,
- 37, 39, 47, 81, 52, 0, 51, 53, 54, 76,
- 77, 79, 12, 56, 43, 46, 119, 0, 120, 108,
- 148, 23, 0, 0, 31, 30, 0, 0, 33, 82,
- 0, 0, 96, 0, 117, 27, 40, 41, 45, 38,
- 35, 0, 0, 80, 121, 29, 0, 78, 87, 83,
- 84, 0, 0, 0, 85, 86, 48, 49, 50
+ 0, 5, 97, 98, 6, 0, 0, 0, 161, 0,
+ 153, 154, 155, 156, 0, 1, 3, 148, 9, 148,
+ 91, 0, 0, 0, 150, 160, 0, 0, 0, 105,
+ 0, 148, 16, 19, 18, 20, 0, 148, 94, 0,
+ 11, 89, 0, 0, 147, 0, 0, 159, 128, 73,
+ 100, 0, 162, 0, 134, 144, 135, 145, 146, 139,
+ 141, 143, 137, 133, 138, 140, 142, 136, 45, 131,
+ 132, 0, 118, 0, 15, 0, 17, 36, 0, 0,
+ 0, 0, 0, 95, 0, 0, 13, 89, 151, 67,
+ 61, 69, 66, 58, 65, 64, 60, 75, 68, 70,
+ 0, 55, 57, 59, 63, 62, 71, 0, 0, 123,
+ 122, 124, 125, 126, 129, 152, 127, 99, 101, 0,
+ 47, 0, 0, 0, 116, 110, 109, 111, 114, 115,
+ 112, 113, 0, 107, 14, 148, 0, 34, 32, 0,
+ 42, 22, 45, 93, 0, 90, 88, 0, 10, 92,
+ 0, 74, 72, 158, 157, 130, 0, 44, 0, 103,
+ 106, 0, 0, 102, 0, 104, 0, 26, 0, 24,
+ 21, 37, 39, 47, 81, 52, 0, 51, 53, 54,
+ 76, 77, 79, 12, 56, 43, 46, 119, 0, 120,
+ 108, 148, 23, 0, 0, 31, 30, 0, 0, 33,
+ 82, 0, 0, 96, 0, 117, 27, 40, 41, 45,
+ 38, 35, 0, 0, 80, 121, 29, 0, 78, 87,
+ 83, 84, 0, 0, 0, 85, 86, 48, 49, 50
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- -1, 4, 5, 6, 7, 8, 50, 157, 27, 40,
- 41, 42, 87, 145, 179, 150, 175, 176, 203, 43,
- 88, 147, 44, 89, 181, 207, 204, 218, 151, 129,
- 168, 235, 185, 109, 110, 111, 112, 113, 114, 115,
- 187, 188, 189, 190, 210, 211, 222, 229, 230, 231,
- 95, 191, 9, 10, 29, 46, 47, 11, 12, 60,
- 13, 14, 38, 81, 82, 141, 142, 132, 171, 197,
- 123, 124, 125, 77, 78, 79, 15, 16, 32, 33,
- 34, 57, 19, 62
+ -1, 4, 5, 6, 7, 8, 51, 158, 28, 41,
+ 42, 43, 88, 146, 180, 151, 176, 177, 204, 44,
+ 89, 148, 45, 90, 182, 208, 205, 219, 152, 130,
+ 169, 236, 186, 110, 111, 112, 113, 114, 115, 116,
+ 188, 189, 190, 191, 211, 212, 223, 230, 231, 232,
+ 96, 192, 9, 10, 30, 47, 48, 11, 12, 61,
+ 13, 14, 39, 82, 83, 142, 143, 133, 172, 198,
+ 124, 125, 126, 78, 79, 80, 15, 16, 33, 34,
+ 35, 58, 19, 63
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -152
+#define YYPACT_NINF -153
static const yytype_int16 yypact[] =
{
- 18, -152, -22, 4, 24, -152, 18, -152, -9, -152,
- -7, -152, -152, -152, -152, 25, 4, -11, -152, -6,
- -152, -152, -152, 27, -152, -152, -20, -152, 6, -152,
- 2, 28, 0, -152, 55, -12, 16, 237, 76, 32,
- -13, -152, -152, -152, -152, 189, -10, -152, 35, -152,
- 92, 2, 4, -152, 78, 119, -152, 26, -152, -152,
- 42, -152, 43, -152, -152, -152, -152, -152, -152, -152,
- -152, -152, -152, -152, -152, -152, -152, 60, -152, -152,
- 44, 94, 184, -152, 48, -152, -152, 69, 52, 61,
- 53, 56, -152, 85, 114, 112, 92, -152, -152, -152,
- -152, -152, -152, -152, -152, -152, -152, -152, -152, 12,
- -152, -152, -152, -152, -12, -152, 67, 68, -152, -152,
- -152, -152, -152, -152, -152, 26, -152, -152, -21, 97,
- 93, 98, 75, -152, -152, -152, -152, -152, -152, -152,
- -152, 3, -152, -152, 21, 77, -152, -152, 74, 100,
- -152, 60, -152, 9, -152, -152, 2, -152, -152, 140,
- -152, -152, -152, -152, -152, 84, -152, 9, -152, -152,
- 103, 26, -152, 184, -152, 8, -152, 221, -152, -152,
- -152, 113, 97, -12, -152, 86, -152, -152, -152, -152,
- -152, -152, -152, -152, -152, -152, -152, 14, -152, -152,
- 6, -152, 102, 88, -152, -152, -12, 87, -152, -152,
- 2, 142, -152, 26, -152, -152, -152, -152, 60, -152,
- -152, 109, 143, -152, -152, -152, 96, -152, -152, 147,
- -152, 128, 96, 41, -152, -152, -152, -152, -152
+ 18, -153, -24, 4, 28, -153, 18, -153, -9, -153,
+ -7, -153, -153, -153, -153, 5, 4, 7, -153, 11,
+ -153, -153, -153, -153, 52, -153, -153, -20, -153, 23,
+ -153, 17, 43, 2, -153, -5, 29, 31, 237, 83,
+ 37, -16, -153, -153, -153, -153, 189, -10, -153, 36,
+ -153, 93, 17, 4, -153, 78, 119, -153, 26, -153,
+ -153, 44, -153, 46, -153, -153, -153, -153, -153, -153,
+ -153, -153, -153, -153, -153, -153, -153, -153, 59, -153,
+ -153, 47, 96, 184, -153, 49, -153, -153, 72, 54,
+ 62, 55, 56, -153, 86, 120, 112, 93, -153, -153,
+ -153, -153, -153, -153, -153, -153, -153, -153, -153, -153,
+ 12, -153, -153, -153, -153, 29, -153, 68, 75, -153,
+ -153, -153, -153, -153, -153, -153, 26, -153, -153, -21,
+ 97, 95, 99, 76, -153, -153, -153, -153, -153, -153,
+ -153, -153, 8, -153, -153, 21, 77, -153, -153, 80,
+ 100, -153, 59, -153, 9, -153, -153, 17, -153, -153,
+ 140, -153, -153, -153, -153, -153, 85, -153, 9, -153,
+ -153, 105, 26, -153, 184, -153, 14, -153, 221, -153,
+ -153, -153, 114, 97, 29, -153, 87, -153, -153, -153,
+ -153, -153, -153, -153, -153, -153, -153, -153, 16, -153,
+ -153, 23, -153, 102, 88, -153, -153, 29, 98, -153,
+ -153, 17, 142, -153, 26, -153, -153, -153, -153, 59,
+ -153, -153, 109, 143, -153, -153, -153, 103, -153, -153,
+ 147, -153, 128, 103, 41, -153, -153, -153, -153, -153
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -152, -152, 154, -152, -152, -152, -47, -152, -152, -152,
- 124, -152, -152, -152, -152, -152, -152, -35, -152, -152,
- -152, -152, -152, -152, -152, -152, -152, -152, -152, -142,
- -15, -152, 1, -152, -151, -49, -152, -152, -152, -33,
- -34, -64, -152, -152, -152, -152, -152, -152, -61, -152,
- 80, 83, -152, -152, -152, -152, 132, -152, -152, -152,
- -152, -152, -152, -152, -152, -152, 7, -152, -152, -152,
- -118, -152, -152, -40, -152, -152, -25, -152, -152, 133,
- 183, -152, -152, -152
+ -153, -153, 154, -153, -153, -153, -48, -153, -153, -153,
+ 124, -153, -153, -153, -153, -153, -153, -33, -153, -153,
+ -153, -153, -153, -153, -153, -153, -153, -153, -153, -143,
+ -14, -153, -1, -153, -152, -50, -153, -153, -153, -34,
+ -35, -63, -153, -153, -153, -153, -153, -153, -57, -153,
+ 81, 82, -153, -153, -153, -153, 133, -153, -153, -153,
+ -153, -153, -153, -153, -153, -153, 15, -153, -153, -153,
+ -119, -153, -153, -41, -153, -153, -26, -153, -153, 132,
+ 183, -153, -153, -153
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
@@ -982,59 +983,59 @@ static const yytype_int16 yypgoto[] =
#define YYTABLE_NINF -29
static const yytype_int16 yytable[] =
{
- 56, 45, 59, 48, 96, 90, 117, 164, 193, 182,
- 20, 52, 154, 17, 173, 45, 98, 99, -4, 200,
- 1, 48, 183, 159, 24, 213, 165, 1, 35, 26,
- 1, 28, -28, 36, 30, 39, 166, 37, 118, 18,
- 21, 100, 84, 101, 154, 91, 1, 54, 98, 99,
- 58, 184, 103, 198, 183, 119, 104, 53, 1, 174,
- 105, 1, 31, 49, 201, 22, 2, 160, 3, 107,
- 214, 58, 51, 100, 108, 101, 225, -28, 61, 54,
- 120, 161, 236, 102, 103, 98, 99, 80, 104, 121,
- 122, 83, 105, 54, 55, 224, 93, 94, 126, 127,
- 128, 107, 130, 58, 186, 131, 108, 143, 144, 192,
- 100, 146, 101, 148, 149, 152, 153, 154, 186, 177,
- 102, 103, 156, 162, 163, 104, 98, 99, 167, 105,
- 202, 170, 169, 106, 172, 180, 178, 205, 107, -25,
- 58, 194, 196, 108, 206, 212, 220, 98, 99, 217,
- 209, 100, 223, 101, 216, 226, 227, 228, 232, 233,
- 25, 116, 103, 221, 85, 215, 104, 208, 195, 238,
- 105, 234, 100, 219, 101, 177, 158, 155, 92, 107,
- 199, 58, 102, 103, 108, 97, 23, 104, 133, 0,
- 134, 105, 0, 135, 0, 0, 0, 0, 0, 237,
- 107, 0, 58, 63, 64, 108, 65, 66, 67, 68,
- 69, 70, 71, 72, 73, 74, 75, 76, 0, 0,
- 136, 0, 0, 0, 0, 137, 0, 0, 0, 138,
- 0, 0, 0, 139, 0, 63, 64, 140, 65, 66,
- 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
- 86, 63, 64, 0, 65, 66, 67, 68, 69, 70,
- 71, 72, 73, 74, 75, 76, 0, 0, 0, 0,
+ 57, 46, 60, 49, 97, 91, 118, 165, 194, 183,
+ 20, 17, 155, 53, 31, 46, 99, 100, -4, 174,
+ 1, 49, 184, 160, 1, 201, 166, 214, 25, 27,
+ 1, 29, -28, 55, 56, 40, 167, 18, 119, 85,
+ 21, 101, 32, 102, 155, 92, 36, 55, 99, 100,
+ 37, 185, 104, 199, 184, 120, 105, 22, 1, 54,
+ 106, 1, 38, 1, 175, 23, 2, 161, 3, 108,
+ 202, 59, 215, 101, 109, 102, 226, -28, 50, 55,
+ 121, 162, 237, 103, 104, 99, 100, 52, 105, 122,
+ 123, 59, 106, 62, 81, 225, 84, 94, 95, 129,
+ 127, 108, 128, 59, 187, 131, 109, 132, 144, 193,
+ 101, 145, 102, 147, 149, 153, 150, 154, 187, 178,
+ 103, 104, 157, 155, 163, 105, 99, 100, 168, 106,
+ 203, 164, 171, 107, 170, 173, 179, 206, 108, -25,
+ 59, 181, 195, 109, 197, 207, 213, 99, 100, 218,
+ 210, 101, 224, 102, 217, 227, 228, 221, 233, 234,
+ 26, 117, 104, 222, 229, 86, 105, 196, 216, 209,
+ 106, 239, 101, 220, 102, 178, 235, 156, 159, 108,
+ 93, 59, 103, 104, 109, 98, 24, 105, 134, 200,
+ 135, 106, 0, 136, 0, 0, 0, 0, 0, 238,
+ 108, 0, 59, 64, 65, 109, 66, 67, 68, 69,
+ 70, 71, 72, 73, 74, 75, 76, 77, 0, 0,
+ 137, 0, 0, 0, 0, 138, 0, 0, 0, 139,
+ 0, 0, 0, 140, 0, 64, 65, 141, 66, 67,
+ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
+ 87, 64, 65, 0, 66, 67, 68, 69, 70, 71,
+ 72, 73, 74, 75, 76, 77, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 49
+ 0, 0, 50
};
static const yytype_int16 yycheck[] =
{
- 34, 26, 35, 28, 51, 45, 55, 125, 159, 151,
- 6, 11, 3, 35, 11, 40, 7, 8, 0, 11,
- 40, 46, 13, 11, 0, 11, 47, 40, 39, 38,
- 40, 38, 11, 39, 9, 55, 57, 10, 12, 61,
- 36, 32, 55, 34, 3, 55, 40, 38, 7, 8,
- 62, 42, 43, 171, 13, 29, 47, 57, 40, 56,
- 51, 40, 37, 61, 56, 61, 48, 55, 50, 60,
- 56, 62, 44, 32, 65, 34, 218, 56, 62, 38,
- 54, 114, 233, 42, 43, 7, 8, 11, 47, 63,
- 64, 59, 51, 38, 39, 213, 61, 5, 56, 56,
- 40, 60, 58, 62, 153, 11, 65, 59, 39, 156,
- 32, 59, 34, 52, 61, 59, 31, 3, 167, 144,
- 42, 43, 10, 56, 56, 47, 7, 8, 31, 51,
- 177, 33, 39, 55, 59, 61, 59, 177, 60, 39,
- 62, 57, 39, 65, 31, 59, 59, 7, 8, 61,
- 183, 32, 10, 34, 52, 46, 13, 61, 11, 31,
- 6, 42, 43, 210, 40, 200, 47, 182, 167, 233,
- 51, 232, 32, 206, 34, 200, 96, 94, 46, 60,
- 173, 62, 42, 43, 65, 52, 3, 47, 4, -1,
- 6, 51, -1, 9, -1, -1, -1, -1, -1, 233,
+ 35, 27, 36, 29, 52, 46, 56, 126, 160, 152,
+ 6, 35, 3, 11, 9, 41, 7, 8, 0, 11,
+ 40, 47, 13, 11, 40, 11, 47, 11, 0, 38,
+ 40, 38, 11, 38, 39, 55, 57, 61, 12, 55,
+ 36, 32, 37, 34, 3, 55, 39, 38, 7, 8,
+ 39, 42, 43, 172, 13, 29, 47, 53, 40, 57,
+ 51, 40, 10, 40, 56, 61, 48, 55, 50, 60,
+ 56, 62, 56, 32, 65, 34, 219, 56, 61, 38,
+ 54, 115, 234, 42, 43, 7, 8, 44, 47, 63,
+ 64, 62, 51, 62, 11, 214, 59, 61, 5, 40,
+ 56, 60, 56, 62, 154, 58, 65, 11, 59, 157,
+ 32, 39, 34, 59, 52, 59, 61, 31, 168, 145,
+ 42, 43, 10, 3, 56, 47, 7, 8, 31, 51,
+ 178, 56, 33, 55, 39, 59, 59, 178, 60, 39,
+ 62, 61, 57, 65, 39, 31, 59, 7, 8, 61,
+ 184, 32, 10, 34, 52, 46, 13, 59, 11, 31,
+ 6, 42, 43, 211, 61, 41, 47, 168, 201, 183,
+ 51, 234, 32, 207, 34, 201, 233, 95, 97, 60,
+ 47, 62, 42, 43, 65, 53, 3, 47, 4, 174,
+ 6, 51, -1, 9, -1, -1, -1, -1, -1, 234,
60, -1, 62, 14, 15, 65, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, -1, -1,
36, -1, -1, -1, -1, 41, -1, -1, -1, 45,
@@ -1052,28 +1053,28 @@ static const yytype_uint8 yystos[] =
{
0, 40, 48, 50, 68, 69, 70, 71, 72, 119,
120, 124, 125, 127, 128, 143, 144, 35, 61, 149,
- 6, 36, 61, 147, 0, 69, 38, 75, 38, 121,
- 9, 37, 145, 146, 147, 39, 39, 10, 129, 55,
- 76, 77, 78, 86, 89, 143, 122, 123, 143, 61,
- 73, 44, 11, 57, 38, 39, 107, 148, 62, 106,
- 126, 62, 150, 14, 15, 17, 18, 19, 20, 21,
- 22, 23, 24, 25, 26, 27, 28, 140, 141, 142,
- 11, 130, 131, 59, 55, 77, 61, 79, 87, 90,
- 140, 55, 123, 61, 5, 117, 73, 146, 7, 8,
- 32, 34, 42, 43, 47, 51, 55, 60, 65, 100,
- 101, 102, 103, 104, 105, 106, 42, 102, 12, 29,
- 54, 63, 64, 137, 138, 139, 56, 56, 40, 96,
- 58, 11, 134, 4, 6, 9, 36, 41, 45, 49,
- 53, 132, 133, 59, 39, 80, 59, 88, 52, 61,
- 82, 95, 59, 31, 3, 118, 10, 74, 117, 11,
- 55, 106, 56, 56, 137, 47, 57, 31, 97, 39,
- 33, 135, 59, 11, 56, 83, 84, 143, 59, 81,
- 61, 91, 96, 13, 42, 99, 102, 107, 108, 109,
- 110, 118, 73, 101, 57, 99, 39, 136, 137, 133,
- 11, 56, 73, 85, 93, 140, 31, 92, 97, 106,
- 111, 112, 59, 11, 56, 84, 52, 61, 94, 106,
- 59, 73, 113, 10, 137, 96, 46, 13, 61, 114,
- 115, 116, 11, 31, 115, 98, 101, 107, 108
+ 6, 36, 53, 61, 147, 0, 69, 38, 75, 38,
+ 121, 9, 37, 145, 146, 147, 39, 39, 10, 129,
+ 55, 76, 77, 78, 86, 89, 143, 122, 123, 143,
+ 61, 73, 44, 11, 57, 38, 39, 107, 148, 62,
+ 106, 126, 62, 150, 14, 15, 17, 18, 19, 20,
+ 21, 22, 23, 24, 25, 26, 27, 28, 140, 141,
+ 142, 11, 130, 131, 59, 55, 77, 61, 79, 87,
+ 90, 140, 55, 123, 61, 5, 117, 73, 146, 7,
+ 8, 32, 34, 42, 43, 47, 51, 55, 60, 65,
+ 100, 101, 102, 103, 104, 105, 106, 42, 102, 12,
+ 29, 54, 63, 64, 137, 138, 139, 56, 56, 40,
+ 96, 58, 11, 134, 4, 6, 9, 36, 41, 45,
+ 49, 53, 132, 133, 59, 39, 80, 59, 88, 52,
+ 61, 82, 95, 59, 31, 3, 118, 10, 74, 117,
+ 11, 55, 106, 56, 56, 137, 47, 57, 31, 97,
+ 39, 33, 135, 59, 11, 56, 83, 84, 143, 59,
+ 81, 61, 91, 96, 13, 42, 99, 102, 107, 108,
+ 109, 110, 118, 73, 101, 57, 99, 39, 136, 137,
+ 133, 11, 56, 73, 85, 93, 140, 31, 92, 97,
+ 106, 111, 112, 59, 11, 56, 84, 52, 61, 94,
+ 106, 59, 73, 113, 10, 137, 96, 46, 13, 61,
+ 114, 115, 116, 11, 31, 115, 98, 101, 107, 108
};
#define yyerrok (yyerrstatus = 0)
@@ -2040,7 +2041,7 @@ yyreduce:
cimmofParser *cp = cimmofParser::Instance();
// Create new parameter with name, type, isArray, array, referenceClassName
- if ((yyvsp[(4) - (4)].ival) == -1)
+ if ((yyvsp[(4) - (4)].ival) == -1)
{
p = cp->newParameter(*(yyvsp[(3) - (4)].cimnameval), (yyvsp[(2) - (4)].datatype), false, 0, g_referenceClassName);
}
@@ -2293,7 +2294,7 @@ yyreduce:
case 58:
#line 762 "cimmof.y"
{
- g_typedInitializerValue.nonNullParserType =
+ g_typedInitializerValue.nonNullParserType =
strValTypeNS::NULL_VALUE;
(yyval.strval) = new String(String::EMPTY);
;}
@@ -2838,7 +2839,7 @@ yyreduce:
case 127:
#line 1305 "cimmof.y"
{
- (yyval.flavor) = &g_flavor;
+ (yyval.flavor) = &g_flavor;
;}
break;
@@ -2847,7 +2848,7 @@ yyreduce:
{
g_flavor = CIMFlavor (CIMFlavor::NONE);
(yyval.flavor) = &g_flavor;
- ;}
+ ;}
break;
case 131:
@@ -2994,16 +2995,23 @@ yyreduce:
break;
case 155:
-#line 1406 "cimmof.y"
+#line 1409 "cimmof.y"
{
- // KS Probably hangover for case when no scope supplied
g_flavor = CIMFlavor (CIMFlavor::NONE);
- (yyval.strval) = (yyvsp[(1) - (1)].strval);
+ (yyval.strval) = new String("Reference");
;}
break;
case 156:
-#line 1416 "cimmof.y"
+#line 1414 "cimmof.y"
+ {
+ g_flavor = CIMFlavor (CIMFlavor::NONE);
+ (yyval.strval) = (yyvsp[(1) - (1)].strval);
+ ;}
+ break;
+
+ case 157:
+#line 1423 "cimmof.y"
{
g_typedInitializerValue.set(
typedInitializerValue::CONSTANT_VALUE, (yyvsp[(2) - (3)].strval));
@@ -3012,16 +3020,16 @@ yyreduce:
;}
break;
- case 157:
-#line 1423 "cimmof.y"
+ case 158:
+#line 1430 "cimmof.y"
{
g_typedInitializerValue.setNull();
(yyval.typedinitializer) = &g_typedInitializerValue;
;}
break;
- case 158:
-#line 1428 "cimmof.y"
+ case 159:
+#line 1435 "cimmof.y"
{
g_typedInitializerValue.set(
typedInitializerValue::ARRAY_VALUE, (yyvsp[(1) - (1)].strval));
@@ -3030,27 +3038,27 @@ yyreduce:
;}
break;
- case 159:
-#line 1434 "cimmof.y"
+ case 160:
+#line 1441 "cimmof.y"
{ /* empty */
g_typedInitializerValue.setNull();
(yyval.typedinitializer) = &g_typedInitializerValue;
;}
break;
- case 160:
-#line 1440 "cimmof.y"
+ case 161:
+#line 1447 "cimmof.y"
{ (yyval.strval) = (yyvsp[(1) - (1)].strval); ;}
break;
- case 161:
-#line 1443 "cimmof.y"
+ case 162:
+#line 1450 "cimmof.y"
{ (yyval.strval) = (yyvsp[(1) - (1)].strval); ;}
break;
/* Line 1267 of yacc.c. */
-#line 3051 "cimmoftemp"
+#line 3059 "cimmoftemp"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -3264,7 +3272,7 @@ yyreturn:
}
-#line 1445 "cimmof.y"
+#line 1452 "cimmof.y"
/*