std::set<int>constReadOnlyParameters;// set of formal function parameters that have glslang qualifier constReadOnly, so we know they are not local function "const" that are write-once
std::unordered_set<int>constReadOnlyParameters;// set of formal function parameters that have glslang qualifier constReadOnly, so we know they are not local function "const" that are write-once
std::map<constglslang::TTypeList*,std::vector<int>>memberRemapper;// for mapping glslang block indices to spv indices (e.g., due to hidden members)
std::unordered_map<constglslang::TTypeList*,std::vector<int>>memberRemapper;// for mapping glslang block indices to spv indices (e.g., due to hidden members)
std::stack<bool>breakForLoop;// false means break for switch
std::stack<bool>breakForLoop;// false means break for switch
std::stack<glslang::TIntermTyped*>loopTerminal;// code from the last part of a for loop: for(...; ...; terminal), needed for e.g., continue };
std::stack<glslang::TIntermTyped*>loopTerminal;// code from the last part of a for loop: for(...; ...; terminal), needed for e.g., continue };