diff --git a/src/croatian/ResHrv.gf b/src/croatian/ResHrv.gf index 94724bb4..c7d1beae 100644 --- a/src/croatian/ResHrv.gf +++ b/src/croatian/ResHrv.gf @@ -332,18 +332,18 @@ voicing : Str -> Str = \s -> case s of { AdjForms : Type = { msnom, fsnom, nsnom : Str ; msgen, fsgen : Str ; -- nsgen = msgen - msdat : Str ; -- nsdat = msdat + msdat : Str ; -- msloc,nsdat,nsloc = msdat fsdat : Str ; -- fsloc = fsdat fsacc : Str ; -- - msloc : Str ; -- nsloc, fsins = msloc msins : Str ; -- nsins, pdat, ploc, pins = msins + fsins : Str ; -- no o/e variation like in msdat mpnom : Str ; -- mpvoc = mpnom pgen : Str ; -- } ; invarAdjForms : Str -> AdjForms = \s -> { msnom, fsnom, nsnom, msgen, fsgen, msdat, - fsdat, fsacc, msloc, msins, fsins, mpnom, pgen = s ; + fsdat, fsacc, msins, fsins, mpnom, pgen = s ; } ; -- used in PositA but will also work in Compar and Superl by calling their record fields @@ -361,13 +361,12 @@ adjFormsAdjective : AdjForms -> Adjective = \afs -> { | | => afs.fsgen ; - => afs.msdat ; + => afs.msdat ; => afs.fsdat ; => afs.fsacc ; - - | => afs.msloc ; | => afs.msins ; + => afs.fsins ; => afs.mpnom ; => afs.pgen } @@ -382,20 +381,19 @@ adjFormsAdjective : AdjForms -> Adjective = \afs -> { vel + "a" + k@? => vel + k ; vel + "i" => vel ; _ => velik - } + } ; + oe : Str = ifSoft velik "e" "o" in { msnom = velik ; fsnom = velk + "a" ; - nsnom = ifSoft velik - (velk + "e") - (velk + "o") ; - msgen = velk + "og" ; + nsnom = velk + oe ; + msgen = velk + oe + "g" ; fsgen = velk + "e" ; - msdat = velk + "om" ; + msdat = velk + oe + "m" ; fsdat = velk + "oj" ; fsacc = velk + "u" ; - msloc = velk + "om" ; msins = velk + "im" ; + fsins = velk + "om" ; mpnom = velk + "i" ; pgen = velk + "ih" ; } ;