RE: alpha problems with ghc 6.4

2005-03-16 Thread Simon Marlow
On 16 March 2005 04:14, Ian Lynagh wrote:

 An alpha build of ghc 6.4 quickly fails because of the
 
 #if alpha_TARGET_ARCH
 import PrimRep  ( getPrimRepSize, isFloatingRep )
 import Type ( typePrimRep )
 #endif
 
 in ghc/compiler/typecheck/TcForeign.lhs which no longer exist.
 Fortunately, the imported functions aren't used either.
 
 Unfortunately, the build then fails when it comes to try to compile
 this 
 same file as the typeMachRepRep function, used in this piece of code:
 
 \begin{code}
 #include nativeGen/NCG.h
 #if alpha_TARGET_ARCH
 checkFEDArgs arg_tys
   = check (integral_args = 32) err
   where
 integral_args = sum [ machRepByteWidth rep
 | (rep,hint) - map typeMachRepRep arg_tys,
   hint /= FloatHint ]
 err = ptext SLIT(On Alpha, I can only handle 4
 non-floating-point arguments to foreign export dynamic) #else
 checkFEDArgs arg_tys = returnM ()
 #endif
 \end{code}
 
 doesn't exist. Is this fixable?

I think you want to use something like typeMachRep in
deSugar/DsForeign.lhs.

Cheers,
Simon
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


alpha problems with ghc 6.4

2005-03-15 Thread Ian Lynagh

Hi,

An alpha build of ghc 6.4 quickly fails because of the

#if alpha_TARGET_ARCH
import PrimRep  ( getPrimRepSize, isFloatingRep )
import Type ( typePrimRep )
#endif

in ghc/compiler/typecheck/TcForeign.lhs which no longer exist.
Fortunately, the imported functions aren't used either.

Unfortunately, the build then fails when it comes to try to compile this
same file as the typeMachRepRep function, used in this piece of code:

\begin{code}
#include nativeGen/NCG.h
#if alpha_TARGET_ARCH
checkFEDArgs arg_tys
  = check (integral_args = 32) err
  where
integral_args = sum [ machRepByteWidth rep
| (rep,hint) - map typeMachRepRep arg_tys,
  hint /= FloatHint ]
err = ptext SLIT(On Alpha, I can only handle 4 non-floating-point 
arguments to foreign export dynamic)
#else
checkFEDArgs arg_tys = returnM ()
#endif
\end{code}

doesn't exist. Is this fixable?


Thanks
Ian

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users