The below works fine in 0.3 but I get 

ERROR: error compiling anonymous: type definition not allowed inside a 
local scope

In 0.4.  How am I suppose to define types inside a Macro?  As far as I can 
tell, the esc() should cause everything to run in the current scope which 
isn't local.




macro calculus_operator(Op,AbstOp,WrappOp)
    return esc(quote      
        abstract $AbstOp{T} <: BandedOperator{T}  
        immutable $Op{S<:FunctionSpace,T<:Number} <: $AbstOp{T}
            space::S        # the domain space
            order::Int
        end              
        immutable $WrappOp{S<:BandedOperator} <: $AbstOp{Float64}
            op::S
            order::Int
        end                
        ## More code
    end)
end
@calculus_operator(Derivative,AbstractDerivative,DerivativeWrapper)


Reply via email to