{-# LANGUAGE AllowAmbiguousTypes #-}

module Language.Fortran.Repr.Util where

import Language.Fortran.Repr.Compat.Natural

import GHC.TypeNats
import GHC.Exts

natVal'' :: forall (a :: NaturalK). KnownNat a => Natural
natVal'' :: forall (a :: NaturalK). KnownNat a => NaturalK
natVal'' = forall (n :: NaturalK). KnownNat n => Proxy# n -> NaturalK
natVal' (forall {k} (a :: k). Proxy# a
proxy# :: Proxy# a)