private boolean expandMacros(ConstructTpl ctpl) {
		VectorSTL<OpTpl> vec = ctpl.getOpvec();
		VectorSTL<OpTpl> newvec = new VectorSTL<>();
		IteratorSTL<OpTpl> iter;
		for (iter = vec.begin(); !iter.isEnd(); iter.increment()) {
			OpTpl op = iter.get();
			if (op.getOpcode() == OpCode.CPUI_CAST) {
				MacroBuilder builder =
					new MacroBuilder(this, op.location, newvec, ctpl.numLabels());
				int index = (int) op.getIn(0).getOffset().getReal();
				if (index >= macrotable.size()) {
					return false;
				}
				builder.setMacroOp(op);
				ConstructTpl macro_tpl = macrotable.get(index);
				builder.build(macro_tpl, -1);
				ctpl.setNumLabels(ctpl.numLabels() + macro_tpl.numLabels());
				op.dispose(); // Throw away the place holder op
				if (builder.hasError()) {
					return false;
				}
			}
			else {
				newvec.push_back(op);
			}
		}
		ctpl.setOpvec(newvec);
		return true;
	}
Sets whether or not to print out warning info about
{@link Constructor}s which reference varnodes in the
unique space larger than {@link SleighBase#MAX_UNIQUE_SIZE}.
@param val whether to print info about contructors using large varnodes
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/pcodeCPort/slgh_compile/SleighCompile.java