@@ -0,0 +1,2432 @@
+package railo.transformer.bytecode.literal;%0A%0Aimport org.objectweb.asm.Type;%0Aimport org.objectweb.asm.commons.GeneratorAdapter;%0A%0Aimport railo.runtime.op.Caster;%0Aimport railo.transformer.bytecode.BytecodeContext;%0Aimport railo.transformer.bytecode.Literal;%0Aimport railo.transformer.bytecode.expression.Expression;%0Aimport railo.transformer.bytecode.expression.ExpressionBase;%0Aimport railo.transformer.bytecode.util.Methods;%0Aimport railo.transformer.bytecode.util.Types;%0A%0A/**%0A * Literal Double Value%0A */%0Apublic final class LitLong extends ExpressionBase implements Literal %7B%0A    %0A    private long l;%0A%0A%09public static Expression toExpr(long l, int line) %7B%0A%09%09return new LitLong(l,line);%0A%09%7D%0A    %0A    /**%0A     * constructor of the class%0A     * @param d%0A     * @param line %0A     */%0A%09public LitLong(long l, int line) %7B%0A        super(line);        %0A        this.l=l;%0A    %7D%0A%0A%09/**%0A     * @return return value as int%0A     */ %0A    public long getLongValue() %7B%0A        return l;%0A    %7D%0A    %0A    /**%0A     * @return return value as Double Object%0A     */%0A    public Long getLong() %7B%0A        return new Long(l);%0A    %7D%0A    %0A    /**%0A     * @see railo.transformer.bytecode.Literal#getString()%0A     */%0A    public String getString() %7B%0A        return Caster.toString(l);%0A    %7D%0A    %0A    /**%0A     * @return return value as a Boolean Object%0A     */%0A    public Boolean getBoolean() %7B%0A        return Caster.toBoolean(l);%0A    %7D%0A    %0A    /**%0A     * @return return value as a boolean value%0A     */%0A    public boolean getBooleanValue() %7B%0A        return Caster.toBooleanValue(l);%0A    %7D%0A%0A    /**%0A     * @see railo.transformer.bytecode.expression.Expression#_writeOut(org.objectweb.asm.commons.GeneratorAdapter, int)%0A     */%0A    public Type _writeOut(BytecodeContext bc, int mode) %7B%0A    %09GeneratorAdapter adapter = bc.getAdapter();%0A        adapter.push(l);%0A        if(mode==MODE_REF) %7B%0A            adapter.invokeStatic(Types.CASTER,Methods.METHOD_TO_LONG_FROM_LONG_VALUE);%0A            return Types.LONG;%0A        %7D%0A        return Types.LONG_VALUE;%0A    %7D%0A%0A    /**%0A     * @see railo.transformer.bytecode.Literal#getDouble(java.lang.Double)%0A     */%0A    public Double getDouble(Double defaultValue) %7B%0A        return getDouble();%0A    %7D%0A%0A    private Double getDouble() %7B%0A%09%09return new Double(l);%0A%09%7D%0A%0A%09/**%0A     * @see railo.transformer.bytecode.Literal#getBoolean(java.lang.Boolean)%0A     */%0A    public Boolean getBoolean(Boolean defaultValue) %7B%0A        return getBoolean();%0A    %7D%0A%7D%0A

add literal long type for bytecode generation