Home | History | Annotate | Download | only in compiler

Lines Matching refs:line

38         TSourceLoc line;
48 TSourceLoc line;
158 context->error($1.line, "undeclared identifier", $1.string->c_str(), "");
167 context->error($1.line, "variable expected", $1.string->c_str(), "");
179 $$ = context->intermediate.addConstantUnion(constArray, t, $1.line);
183 variable->getType(), $1.line);
197 context->error($1.line, " integer constant overflow", "", "");
202 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtInt, EbpUndefined, EvqConst), $1.line);
207 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtFloat, EbpUndefined, EvqConst), $1.line);
212 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $1.line);
226 context->error($2.line, " left of '[' is not of type array, matrix, or vector ", $1->getAsSymbolNode()->getSymbol().c_str(), "");
228 context->error($2.line, " left of '[' is not of type array, matrix, or vector ", "expression", "");
233 $$ = context->addConstArrayNode($3->getAsConstantUnion()->getUnionArrayPointer()->getIConst(), $1, $2.line);
238 $$ = context->addConstVectorNode(fields, $1, $2.line);
240 $$ = context->addConstMatrixNode($3->getAsConstantUnion()->getUnionArrayPointer()->getIConst(), $1, $2.line);
245 context->error($2.line, "", "[", "field selection out of range '%d'", $3->getAsConstantUnion()->getUnionArrayPointer()->getIConst());
251 if (context->arraySetMaxSize($1->getAsSymbolNode(), $1->getTypePointer(), $3->getAsConstantUnion()->getUnionArrayPointer()->getIConst(), true, $2.line))
254 if (context->arraySetMaxSize($1->getAsSymbolNode(), $1->getTypePointer(), 0, false, $2.line))
258 context->error($2.line, "", "[", "array index out of range '%d'", $3->getAsConstantUnion()->getUnionArrayPointer()->getIConst());
262 $$ = context->intermediate.addIndex(EOpIndexDirect, $1, $3, $2.line);
266 context->error($2.line, "", "[", "array must be redeclared with a size before being indexed with a variable");
270 $$ = context->intermediate.addIndex(EOpIndexIndirect, $1, $3, $2.line);
276 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtFloat, EbpHigh, EvqConst), $2.line);
301 context->error($3.line, "cannot apply dot operator to an array", ".", "");
307 if (! context->parseVectorFields(*$3.string, $1->getNominalSize(), fields, $3.line)) {
314 $$ = context->addConstVectorNode(fields, $1, $3.line);
325 TIntermTyped* index = context->intermediate.addConstantUnion(unionArray, TType(EbtInt, EbpUndefined, EvqConst), $3.line);
326 $$ = context->intermediate.addIndex(EOpIndexDirect, $1, index, $2.line);
330 TIntermTyped* index = context->intermediate.addSwizzle(fields, $3.line);
331 $$ = context->intermediate.addIndex(EOpVectorSwizzle, $1, index, $2.line);
337 if (! context->parseMatrixFields(*$3.string, $1->getNominalSize(), fields, $3.line)) {
346 context->error($2.line, " non-scalar fields not implemented yet", ".", "");
350 TIntermTyped* index = context->intermediate.addConstantUnion(unionArray, TType(EbtInt, EbpUndefined, EvqConst), $3.line);
351 $$ = context->intermediate.addIndex(EOpIndexDirect, $1, index, $2.line);
356 line);
357 $$ = context->intermediate.addIndex(EOpIndexDirect, $1, index, $2.line);
364 context->error($2.line, "structure has no fields", "Internal Error", "");
377 $$ = context->addConstStruct(*$3.string, $1, $2.line);
391 TIntermTyped* index = context->intermediate.addConstantUnion(unionArray, *(*fields)[i].type, $3.line);
392 $$ = context->intermediate.addIndex(EOpIndexDirectStruct, $1, index, $2.line);
396 context->error($2.line, " no such field in structure", $3.string->c_str(), "");
402 context->error($2.line, " field selection requires structure, vector, or matrix on left hand side", $3.string->c_str(), "");
409 if (context->lValueErrorCheck($2.line, "++", $1))
411 $$ = context->intermediate.addUnaryMath(EOpPostIncrement, $1, $2.line, context->symbolTable);
413 context->unaryOpError($2.line, "++", $1->getCompleteString());
419 if (context->lValueErrorCheck($2.line, "--", $1))
421 $$ = context->intermediate.addUnaryMath(EOpPostDecrement, $1, $2.line, context->symbolTable);
423 context->unaryOpError($2.line, "--", $1->getCompleteString());
451 if (context->constructorErrorCheck($1.line, $1.intermNode, *fnCall, op, &type)) {
457 $$ = context->addConstructor($1.intermNode, &type, op, fnCall, $1.line);
462 $$ = context->intermediate.setAggregateOperator(0, op, $1.line);
471 fnCandidate = context->findFunction($1.line, fnCall, &builtIn);
477 context->extensionErrorCheck($1.line, fnCandidate->getExtension())) {
497 $$ = context->intermediate.setAggregateOperator($1.intermAggregate, op, $1.line);
502 $$ = context->intermediate.setAggregateOperator($1.intermAggregate, EOpFunctionCall, $1.line);
529 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtFloat, EbpUndefined, EvqConst), $1.line);
542 context->error($3.line, "methods are not supported", "", "");
551 $$.line = $2.line;
555 $$.line = $2.line;
581 $$.intermNode = context->intermediate.growAggregate($1.intermNode, $3, $2.line);
600 context->error($1.line, "cannot construct this type", "array", "");
629 case 2: FRAG_VERT_ONLY("ivec2", $1.line); op = EOpConstructIVec2; break;
630 case 3: FRAG_VERT_ONLY("ivec3", $1.line); op = EOpConstructIVec3; break;
631 case 4: FRAG_VERT_ONLY("ivec4", $1.line); op = EOpConstructIVec4; break;
637 case 2: FRAG_VERT_ONLY("bvec2", $1.line); op = EOpConstructBVec2; break;
638 case 3: FRAG_VERT_ONLY("bvec3", $1.line); op = EOpConstructBVec3; break;
639 case 4: FRAG_VERT_ONLY("bvec4", $1.line); op = EOpConstructBVec4; break;
645 context->error($1.line, "cannot construct this type", getBasicString($1.type), "");
657 if (context->reservedErrorCheck($1.line, *$1.string))
664 if (context->reservedErrorCheck($1.line, *$1.string))
677 if (context->lValueErrorCheck($1.line, "++", $2))
679 $$ = context->intermediate.addUnaryMath(EOpPreIncrement, $2, $1.line, context->symbolTable);
681 context->unaryOpError($1.line, "++", $2->getCompleteString());
687 if (context->lValueErrorCheck($1.line, "--", $2))
689 $$ = context->intermediate.addUnaryMath(EOpPreDecrement, $2, $1.line, context->symbolTable);
691 context->unaryOpError($1.line, "--", $2->getCompleteString());
698 $$ = context->intermediate.addUnaryMath($1.op, $2, $1.line, context->symbolTable);
706 context->unaryOpError($1.line, errorOp, $2->getCompleteString());
717 : PLUS { $$.line = $1.line; $$.op = EOpNull; }
718 | DASH { $$.line = $1.line; $$.op = EOpNegative; }
719 | BANG { $$.line = $1.line; $$.op = EOpLogicalNot; }
726 FRAG_VERT_ONLY("*", $2.line);
727 $$ = context->intermediate.addBinaryMath(EOpMul, $1, $3, $2.line, context->symbolTable);
729 context->binaryOpError($2.line, "*", $1->getCompleteString(), $3->getCompleteString());
735 FRAG_VERT_ONLY("/", $2.line);
736 $$ = context->intermediate.addBinaryMath(EOpDiv, $1, $3, $2.line, context->symbolTable);
738 context->binaryOpError($2.line, "/", $1->getCompleteString(), $3->getCompleteString());
748 $$ = context->intermediate.addBinaryMath(EOpAdd, $1, $3, $2.line, context->symbolTable);
750 context->binaryOpError($2.line, "+", $1->getCompleteString(), $3->getCompleteString());
756 $$ = context->intermediate.addBinaryMath(EOpSub, $1, $3, $2.line, context->symbolTable);
758 context->binaryOpError($2.line, "-", $1->getCompleteString(), $3->getCompleteString());
772 $$ = context->intermediate.addBinaryMath(EOpLessThan, $1, $3, $2.line, context->symbolTable);
774 context->binaryOpError($2.line, "<", $1->getCompleteString(), $3->getCompleteString());
778 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
782 $$ = context->intermediate.addBinaryMath(EOpGreaterThan, $1, $3, $2.line, context->symbolTable);
784 context->binaryOpError($2.line, ">", $1->getCompleteString(), $3->getCompleteString());
788 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
792 $$ = context->intermediate.addBinaryMath(EOpLessThanEqual, $1, $3, $2.line, context->symbolTable);
794 context->binaryOpError($2.line, "<=", $1->getCompleteString(), $3->getCompleteString());
798 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
802 $$ = context->intermediate.addBinaryMath(EOpGreaterThanEqual, $1, $3, $2.line, context->symbolTable);
804 context->binaryOpError($2.line, ">=", $1->getCompleteString(), $3->getCompleteString());
808 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
816 $$ = context->intermediate.addBinaryMath(EOpEqual, $1, $3, $2.line, context->symbolTable);
818 context->binaryOpError($2.line, "==", $1->getCompleteString(), $3->getCompleteString());
822 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
826 $$ = context->intermediate.addBinaryMath(EOpNotEqual, $1, $3, $2.line, context->symbolTable);
828 context->binaryOpError($2.line, "!=", $1->getCompleteString(), $3->getCompleteString());
832 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
852 $$ = context->intermediate.addBinaryMath(EOpLogicalAnd, $1, $3, $2.line, context->symbolTable);
854 context->binaryOpError($2.line, "&&", $1->getCompleteString(), $3->getCompleteString());
858 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
866 $$ = context->intermediate.addBinaryMath(EOpLogicalXor, $1, $3, $2.line, context->symbolTable);
868 context->binaryOpError($2.line, "^^", $1->getCompleteString(), $3->getCompleteString());
872 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
880 $$ = context->intermediate.addBinaryMath(EOpLogicalOr, $1, $3, $2.line, context->symbolTable);
882 context->binaryOpError($2.line, "||", $1->getCompleteString(), $3->getCompleteString());
886 $$ = context->intermediate.addConstantUnion(unionArray, TType(EbtBool, EbpUndefined, EvqConst), $2.line);
894 if (context->boolErrorCheck($2.line, $1))
897 $$ = context->intermediate.addSelection($1, $3, $5, $2.line);
902 context->binaryOpError($2.line, ":", $3->getCompleteString(), $5->getCompleteString());
912 if (context->lValueErrorCheck($2.line, "assign", $1))
914 $$ = context->intermediate.addAssign($2.op, $1, $3, $2.line);
916 context->assignError($2.line, "assign", $1->getCompleteString(), $3->getCompleteString());
924 : EQUAL { $$.line = $1.line; $$.op = EOpAssign; }
925 | MUL_ASSIGN { FRAG_VERT_ONLY("*=", $1.line); $$.line = $1.line; $$.op = EOpMulAssign; }
926 | DIV_ASSIGN { FRAG_VERT_ONLY("/=", $1.line); $$.line = $1.line; $$.op = EOpDivAssign; }
927 | ADD_ASSIGN { $$.line = $1.line; $$.op = EOpAddAssign; }
928 | SUB_ASSIGN { $$.line = $1.line; $$.op = EOpSubAssign; }
936 $$ = context->intermediate.addComma($1, $3, $2.line);
938 context->binaryOpError($2.line, ",", $1->getCompleteString(), $3->getCompleteString());
968 prototype = context->intermediate.growAggregate(prototype, context->intermediate.addSymbol(variable->getUniqueId(), variable->getName(), variable->getType(), $1.line), $1.line);
972 prototype = context->intermediate.growAggregate(prototype, context->intermediate.addSymbol(0, "", *param.type, $1.line), $1.line);
1003 context->error($2.line, "overloaded functions must have the same return type", $1->getReturnType().getBasicString(), "");
1008 context->error($2.line, "overloaded functions must have the same parameter qualifiers", $1->getParam(i).type->getQualifierString(), "");
1020 $$.line = $2.line;
1054 context->error($2.line, "cannot be an argument type except for '(void)'", "void", "");
1068 context->error($2.line, "no qualifiers allowed for function return", getQualifierString($1.qualifier), "");
1072 if (context->structQualifierErrorCheck($2.line, $1))
1087 context->error($2.line, "illegal use of type 'void'", $2.string->c_str(), "");
1090 if (context->reservedErrorCheck($2.line, *$2.string))
1093 $$.line = $2.line;
1098 if (context->arrayTypeErrorCheck($3.line, $1))
1101 if (context->reservedErrorCheck($2.line, *$2.string))
1105 if (context->arraySizeErrorCheck($3.line, $4, size))
1111 $$.line = $2.line;
1127 if (context->paramErrorCheck($3.line, $1.qualifier, $2, $$.param.type))
1132 if (context->parameterSamplerErrorCheck($2.line, $1, *$2.param.type))
1134 if (context->paramErrorCheck($2.line, EvqTemporary, $1, $$.param.type))
1142 if (context->paramErrorCheck($3.line, $1.qualifier, $2, $$.param.type))
1147 if (context->parameterSamplerErrorCheck($2.line, $1, *$2.param.type))
1149 if (context->paramErrorCheck($2.line, EvqTemporary, $1, $$.param.type))
1182 if (context->precisionErrorCheck($1.line, $$.type.precision, $1.type.type)) {
1188 $$.intermAggregate = context->intermediate.growAggregate($1.intermNode, context->intermediate.addSymbol(0, *$3.string, TType($1.type), $3.line), $3.line);
1190 if (context->structQualifierErrorCheck($3.line, $$.type))
1193 if (context->nonInitConstErrorCheck($3.line, *$3.string, $$.type))
1196 if (context->nonInitErrorCheck($3.line, *$3.string, $$.type))
1200 if (context->structQualifierErrorCheck($3.line, $1.type))
1203 if (context->nonInitConstErrorCheck($3.line, *$3.string, $1.type))
1208 if (context->arrayTypeErrorCheck($4.line, $1.type) || context->arrayQualifierErrorCheck($4.line, $1.type))
1213 if (context->arrayErrorCheck($4.line, *$3.string, $1.type, variable))
1218 if (context->structQualifierErrorCheck($3.line, $1.type))
1221 if (context->nonInitConstErrorCheck($3.line, *$3.string, $1.type))
1226 if (context->arrayTypeErrorCheck($4.line, $1.type) || context->arrayQualifierErrorCheck($4.line, $1.type))
1230 if (context->arraySizeErrorCheck($4.line, $5, size))
1234 if (context->arrayErrorCheck($4.line, *$3.string, $1.type, variable))
1238 $$.intermAggregate = context->intermediate.growAggregate($1.intermNode, context->intermediate.addSymbol(0, *$3.string, type, $3.line), $3.line);
1242 if (context->structQualifierErrorCheck($3.line, $1.type))
1248 if (!context->executeInitializer($3.line, *$3.string, $1.type, $5, intermNode)) {
1253 $$.intermAggregate = context->intermediate.growAggregate($1.intermNode, intermNode, $4.line);
1266 $$.intermAggregate = context->intermediate.makeAggregate(context->intermediate.addSymbol(0, "", TType($1), $1.line), $1.line);
1269 $$.intermAggregate = context->intermediate.makeAggregate(context->intermediate.addSymbol(0, *$2.string, TType($1), $2.line), $2.line);
1271 if (context->structQualifierErrorCheck($2.line, $$.type))
1274 if (context->nonInitConstErrorCheck($2.line, *$2.string, $$.type))
1279 if (context->nonInitErrorCheck($2.line, *$2.string, $$.type))
1283 $$.intermAggregate = context->intermediate.makeAggregate(context->intermediate.addSymbol(0, *$2.string, TType($1), $2.line), $2.line);
1285 if (context->structQualifierErrorCheck($2.line, $1))
1288 if (context->nonInitConstErrorCheck($2.line, *$2.string, $1))
1293 if (context->arrayTypeErrorCheck($3.line, $1) || context->arrayQualifierErrorCheck($3.line, $1))
1298 if (context->arrayErrorCheck($3.line, *$2.string, $1, variable))
1305 if (context->arraySizeErrorCheck($2.line, $4, size))
1308 $$.intermAggregate = context->intermediate.makeAggregate(context->intermediate.addSymbol(0, *$2.string, type, $2.line), $2.line);
1310 if (context->structQualifierErrorCheck($2.line, $1))
1313 if (context->nonInitConstErrorCheck($2.line, *$2.string, $1))
1318 if (context->arrayTypeErrorCheck($3.line, $1) || context->arrayQualifierErrorCheck($3.line, $1))
1322 if (context->arraySizeErrorCheck($3.line, $4, size))
1327 if (context->arrayErrorCheck($3.line, *$2.string, $1, variable))
1332 if (context->structQualifierErrorCheck($2.line, $1))
1338 if (!context->executeInitializer($2.line, *$2.string, $1, $4, intermNode)) {
1343 $$.intermAggregate = context->intermediate.makeAggregate(intermNode, $3.line);
1352 VERTEX_ONLY("invariant declaration", $1.line);
1379 // if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "input"))
1381 // UNPACK_ONLY("input", $1.line);
1385 // if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "output"))
1387 // PACK_ONLY("output", $1.line);
1415 // if (context->reservedErrorCheck($2.line, *$2.string, context))
1419 // context->error($2.line, "redefinition", $$.variable->getName().c_str(), "");
1431 context->error($1.line, "not supported", "first-class array", "");
1438 context->error($2.line, "not supported", "first-class array", "");
1445 context->error($2.line, "cannot be bool or int", getQualifierString($1.qualifier), "");
1450 context->error($2.line, "cannot be bool or int", getQualifierString($1.qualifier), "");
1460 $$.setBasic(EbtVoid, EvqConst, $1.line);
1463 VERTEX_ONLY("attribute", $1.line);
1464 if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "attribute"))
1466 $$.setBasic(EbtVoid, EvqAttribute, $1.line);
1469 if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "varying"))
1472 $$.setBasic(EbtVoid, EvqVaryingOut, $1.line);
1474 $$.setBasic(EbtVoid, EvqVaryingIn, $1.line);
1477 if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "invariant varying"))
1480 $$.setBasic(EbtVoid, EvqInvariantVaryingOut, $1.line);
1482 $$.setBasic(EbtVoid, EvqInvariantVaryingIn, $1.line);
1485 if (context->globalErrorCheck($1.line, context->symbolTable.atGlobalLevel(), "uniform"))
1487 $$.setBasic(EbtVoid, EvqUniform, $1.line);
1520 if (context->arrayTypeErrorCheck($2.line, $1))
1524 if (context->arraySizeErrorCheck($2.line, $3, size))
1534 $$.setBasic(EbtVoid, qual, $1.line);
1538 $$.setBasic(EbtFloat, qual, $1.line);
1542 $$.setBasic(EbtInt, qual, $1.line);
1546 $$.setBasic(EbtBool, qual, $1.line);
1549 // PACK_UNPACK_ONLY("unsigned", $1.line);
1551 // $$.setBasic(EbtInt, qual, $1.line);
1555 $$.setBasic(EbtFloat, qual, $1.line);
1560 $$.setBasic(EbtFloat, qual, $1.line);
1565 $$.setBasic(EbtFloat, qual, $1.line);
1570 $$.setBasic(EbtBool, qual, $1.line);
1575 $$.setBasic(EbtBool, qual, $1.line);
1580 $$.setBasic(EbtBool, qual, $1.line);
1585 $$.setBasic(EbtInt, qual, $1.line);
1590 $$.setBasic(EbtInt, qual, $1.line);
1595 $$.setBasic(EbtInt, qual, $1.line);
1599 FRAG_VERT_ONLY("mat2", $1.line);
1601 $$.setBasic(EbtFloat, qual, $1.line);
1605 FRAG_VERT_ONLY("mat3", $1.line);
1607 $$.setBasic(EbtFloat, qual, $1.line);
1611 FRAG_VERT_ONLY("mat4", $1.line);
1613 $$.setBasic(EbtFloat, qual, $1.line);
1617 FRAG_VERT_ONLY("sampler2D", $1.line);
1619 $$.setBasic(EbtSampler2D, qual, $1.line);
1622 FRAG_VERT_ONLY("samplerCube", $1.line);
1624 $$.setBasic(EbtSamplerCube, qual, $1.line);
1627 FRAG_VERT_ONLY("struct", $1.line);
1638 $$.setBasic(EbtStruct, qual, $1.line);
1645 if (context->reservedErrorCheck($2.line, *$2.string))
1651 context->error($2.line, "redefinition", $2.string->c_str(), "struct");
1654 $$.setBasic(EbtStruct, EvqTemporary, $1.line);
1659 $$.setBasic(EbtStruct, EvqTemporary, $1.line);
1673 context->error((*$2)[i].line, "duplicate field name in structure:", "struct", (*$2)[i].type->getFieldName().c_str());
1686 if (context->voidErrorCheck($1.line, (*$2)[0].type->getFieldName(), $1)) {
1700 if (context->arrayTypeErrorCheck($1.line, $1))
1725 if (context->reservedErrorCheck($1.line, *$1.string))
1729 $$.line = $1.line;
1733 if (context->reservedErrorCheck($1.line, *$1.string))
1737 $$.line = $1.line;
1741 if (context->arraySizeErrorCheck($2.line, $3, size))
1812 if (context->boolErrorCheck($1.line, $3))
1814 $$ = context->intermediate.addSelection($3, $5, $1.line);
1840 if (context->structQualifierErrorCheck($2.line, $1))
1842 if (context->boolErrorCheck($2.line, $1))
1845 if (!context->executeInitializer($2.line, *$2.string, $1, $4, intermNode))
1857 $$ = context->intermediate.addLoop(ELoopWhile, 0, $4, 0, $6, $1.line);
1861 if (context->boolErrorCheck($8.line, $6))
1864 $$ = context->intermediate.addLoop(ELoopDoWhile, 0, $6, 0, $3, $4.line);
1869 $$ = context->intermediate.addLoop(ELoopFor, $4, reinterpret_cast<TIntermTyped*>($5.node1), reinterpret_cast<TIntermTyped*>($5.node2), $7, $1.line);
1906 context->error($1.line, "continue statement only allowed in loops", "", "");
1909 $$ = context->intermediate.addBranch(EOpContinue, $1.line);
1913 context->error($1.line, "break statement only allowed in loops", "", "");
1916 $$ = context->intermediate.addBranch(EOpBreak, $1.line);
1919 $$ = context->intermediate.addBranch(EOpReturn, $1.line);
1921 context->error($1.line, "non-void function must return a value", "return", "");
1926 $$ = context->intermediate.addBranch(EOpReturn, $2, $1.line);
1929 context->error($1.line, "void function cannot return a value", "return", "");
1932 context->error($1.line, "function return is not matching type:", "return", "");
1937 FRAG_ONLY("discard", $1.line);
1938 $$ = context->intermediate.addBranch(EOpKill, $1.line);
1977 context->error($1.line, "function already has a body", function->getName().c_str(), "");
1987 context->error($1.line, "function cannot take any parameter(s)", function->getName().c_str(), "");
1991 context->error($1.line, "", function->getReturnType().getBasicString(), "main function cannot return a value");
2024 context->error($1.line, "redefinition", variable->getName().c_str(), "");
2036 variable->getType(), $1.line),
2037 $1.line);
2039 paramNodes = context->intermediate.growAggregate(paramNodes, context->intermediate.addSymbol(0, "", *param.type, $1.line), $1.line);
2042 context->intermediate.setAggregateOperator(paramNodes, EOpParameters, $1.line);
2050 context->error($1.line, "function does not return a value:", "", $1.function->getName().c_str());
2055 context->intermediate.setAggregateOperator($$, EOpFunction, $1.line);