Track separate entry-point names and mangled names...

... and use each in the correct way at consumption sites.
This completes issue #513.
This commit is contained in:
John Kessenich
2016-09-19 18:09:30 -06:00
parent 632f575ecc
commit eee9d536bc
8 changed files with 32 additions and 25 deletions

View File

@@ -850,8 +850,9 @@ TIntermAggregate* HlslParseContext::handleFunctionDefinition(const TSourceLoc& l
currentFunctionType = new TType(EbtVoid);
functionReturnsValue = false;
inEntryPoint = (function.getName() == intermediate.getEntryPoint().c_str());
inEntryPoint = function.getName().compare(intermediate.getEntryPointName().c_str()) == 0;
if (inEntryPoint) {
intermediate.setEntryPointMangledName(function.getMangledName().c_str());
remapEntryPointIO(function);
if (entryPointOutput) {
if (shouldFlatten(entryPointOutput->getType()))