std::vector<TexUnit> TexUnits(T curr, R... rest) { std::vector<TexUnit> v; v.push_back(curr); VTexUnits(v, rest...); return v; } // TexUnits
std::vector<TexUnit> TexUnits(T curr, R... rest) // required on older clang versions { std::vector<TexUnit> v; v.push_back(curr); VTexUnits(v, rest...); return v; }
void VTexUnits(std::vector<TexUnit>& v, T curr, R... rest) { v.push_back(curr); VTexUnits(v, rest...); } // VTexUnits
void VTexUnits(std::vector<TexUnit>& v, T curr, R... rest) // required on older clang versions { v.push_back(curr); VTexUnits(v, rest...); }