TGraphFunctionCall* TDependencyGraph::createFunctionCall(TIntermAggregate* intermFunctionCall) { TGraphFunctionCall* functionCall = new TGraphFunctionCall(intermFunctionCall); mAllNodes.push_back(functionCall); if (functionCall->getIntermFunctionCall()->isUserDefined()) mUserDefinedFunctionCalls.push_back(functionCall); return functionCall; }
void RestrictFragmentShaderTiming::validateUserDefinedFunctionCallUsage(const TDependencyGraph& graph) { for (TFunctionCallVector::const_iterator iter = graph.beginUserDefinedFunctionCalls(); iter != graph.endUserDefinedFunctionCalls(); ++iter) { TGraphFunctionCall* functionCall = *iter; beginError(functionCall->getIntermFunctionCall()); mSink << "A call to a user defined function is not permitted.\n"; } }