diff --git a/src/arabic/ResAra.gf b/src/arabic/ResAra.gf index 0d070d43e..c048bd84f 100644 --- a/src/arabic/ResAra.gf +++ b/src/arabic/ResAra.gf @@ -1189,6 +1189,8 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf -> isPred = False }; + predVSlash : Verb ** {c2 : Str} -> VPSlash = \v -> + predV v ** {c2 = v.c2} ; -- in verbal sentences, the verb agrees with the subject -- in Gender but not in number @@ -1198,8 +1200,8 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf -> _ => pgn }; - insertObj : NP -> VP -> VP = \np,vp -> vp ** - { obj = {s = np.s ! Acc ; a = np.a} }; + insertObj : NP -> VPSlash -> VP = \np,vp -> vp ** + { obj = {s = vp.obj.s ++ vp.c2 ++ np.s ! Acc ; a = np.a} }; insertPred : {s : AAgr => Case => Str} -> VP -> VP = \p,vp -> vp ** { pred = p; diff --git a/src/arabic/VerbAra.gf b/src/arabic/VerbAra.gf index 53258b6d0..9602b19b1 100644 --- a/src/arabic/VerbAra.gf +++ b/src/arabic/VerbAra.gf @@ -6,8 +6,8 @@ concrete VerbAra of Verb = CatAra ** open Prelude, ResAra in { UseV = predV ; SlashVV vv vps = vps ** predV vv ; ----IL - SlashV2a v = predV v ** {c2 = v.c2}; - Slash3V3 v np = insertObj np (predV v) ** {c2 = v.c2}; + SlashV2a v = predVSlash v ; + Slash3V3 v np = insertObj np (predVSlash v) ** {c2 = v.c3}; ComplSlash vp np = insertObj np vp ;