public static Object call(PageContext pc, String sql, Object params, Struct options, String name) throws PageException {
	PageContextImpl pci = (PageContextImpl) pc;
	lucee.runtime.tag.Query qry = (lucee.runtime.tag.Query) pci.use(lucee.runtime.tag.Query.class.getName(), "cfquery", TagLibTag.ATTRIBUTE_TYPE_FIXED);

	try {
	    try {
		qry.hasBody(true);
		// set attributes
		qry.setReturnVariable(true);
		qry.setName(StringUtil.isEmpty(name) ? "QueryExecute" : name);
		if (options != null) TagUtil.setAttributeCollection(pc, qry, null, options, TagLibTag.ATTRIBUTE_TYPE_FIXED);
		qry.setParams(params);

		int res = qry.doStartTag();
		pc.initBody(qry, res);
		pc.forceWrite(sql);
		qry.doAfterBody();
	    }
	    catch (Throwable t) {
		ExceptionUtil.rethrowIfNecessary(t);
		try {
		    qry.doCatch(t);
		}
		catch (Throwable t2) {
		    ExceptionUtil.rethrowIfNecessary(t);
		    throw Caster.toPageException(t2);
		}
	    }
	    finally {
		pc.popBody();
		qry.doFinally();
	    }
	    qry.doEndTag();
	    return qry.getReturnVariable();
	}
	finally {
	    pci.reuse(qry);
	}

    }
public static Object call ( PageContext pc , String sql , Object params , Struct options , String name ) throws PageException { PageContextImpl pci = ( PageContextImpl ) pc ; lucee . runtime . tag . Query qry = ( lucee . runtime . tag . Query ) pci . use ( lucee . runtime . tag . Query . class . getName ( ) , "cfquery" , TagLibTag . ATTRIBUTE_TYPE_FIXED ) ; try { try { qry . hasBody ( true ) ; qry . setReturnVariable ( true ) ; qry . setName ( StringUtil . isEmpty ( name ) ? "QueryExecute" : name ) ; if ( options != null ) TagUtil . setAttributeCollection ( pc , qry , null , options , TagLibTag . ATTRIBUTE_TYPE_FIXED ) ; qry . setParams ( params ) ; int res = qry . doStartTag ( ) ; pc . initBody ( qry , res ) ; pc . forceWrite ( sql ) ; qry . doAfterBody ( ) ; } catch ( Throwable t ) { ExceptionUtil . rethrowIfNecessary ( t ) ; try { qry . doCatch ( t ) ; } catch ( Throwable t2 ) { ExceptionUtil . rethrowIfNecessary ( t ) ; throw Caster . toPageException ( t2 ) ; } } finally { pc . popBody ( ) ; qry . doFinally ( ) ; } qry . doEndTag ( ) ; return qry . getReturnVariable ( ) ; } finally { pci . reuse ( qry ) ; } }
name is set by evaluator