Fixed directed variables (for the C++ backend)

This commit is contained in:
Neil Brown 2009-03-21 21:01:25 +00:00
parent 8e768e2b25
commit b6b0577ecd

View File

@ -761,7 +761,10 @@ cgenVariableWithAM checkValid v mam
return (tell ["("] >> cast >> tell ["(("] >> cg >> tell [")->data))"] return (tell ["("] >> cast >> tell ["(("] >> cg >> tell [")->data))"]
, Pointer $ innerCT) , Pointer $ innerCT)
_ -> inner v _ -> inner v
inner (A.DirectedVariable _ _ v) = inner v inner (A.DirectedVariable _ dir v)
= do (cg, ct) <- inner v
t <- astTypeOf v
return (call genDirectedVariable m t cg dir, ct)
inner sv@(A.SubscriptedVariable m sub v) inner sv@(A.SubscriptedVariable m sub v)
= case sub of = case sub of
A.Subscript _ subCheck _ A.Subscript _ subCheck _