public VectorSTL<OpTpl> createMacroUse(Location location, MacroSymbol sym,
			VectorSTL<ExprTree> param) {
		entry("createMacroUse", location, sym, param);
		if (sym.getNumOperands() != param.size()) {
			boolean tooManyParams = param.size() > sym.getNumOperands();
			reportError(sym.getLocation(), String.format("Invocation of macro '%s' passes too " +
				(tooManyParams ? "many" : "few") + " parameters", sym.getName()));

			return new VectorSTL<>();
		}
		compareMacroParams(sym, param);
		OpTpl op = new OpTpl(location, OpCode.CPUI_CAST);
		VarnodeTpl idvn = new VarnodeTpl(location, new ConstTpl(getConstantSpace()),
			new ConstTpl(ConstTpl.const_type.real, sym.getIndex()),
			new ConstTpl(ConstTpl.const_type.real, 4));
		op.addInput(idvn);
		return ExprTree.appendParams(op, param);
	}
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