Quick answer: Rename duplicate function. Or scope inside a struct.
Two scripts named foo. VM compiles fine. YYC errors. Compile to C++ rejects duplicates.
The Fix
// Conflict
function foo(a) { ... } // in Script_A
function foo(a, b) { ... } // in Script_B -> YYC error
// Resolve via struct
function StructA() constructor {
static foo = function(a) { ... };
}
function StructB() constructor {
static foo = function(a, b) { ... };
}
Struct methods are namespaced. Both can carry foo. YYC accepts.
Verifying
YYC compiles. Calls disambiguated by struct. Code works in VM and YYC.
“Unique names. Or struct scope.”
Related Issues
For shader uniform, see uniform. For 3D audio, see 3D audio.
Unique. YYC happy.