diff --git a/ghc/lib/required/Numeric.lhs b/ghc/lib/required/Numeric.lhs
index 2dd49a3cec1a6d79190f5581fb58018899f584ca..e6c3f0e5df87634b86b49b240e69f182bd3289bc 100644
--- a/ghc/lib/required/Numeric.lhs
+++ b/ghc/lib/required/Numeric.lhs
@@ -1,5 +1,5 @@
 %
-% (c) The AQUA Project, Glasgow University, 1997
+% (c) The AQUA Project, Glasgow University, 1997-98
 %
 \section[Numeric]{Numeric interface}
 
@@ -40,9 +40,9 @@ import PrelRead
 \end{code}
 
 %*********************************************************
-%*							*
-\subsection{Signatures}
-%*							*
+%*							 *
+\subsection[Numeric-signatures]{Signatures}
+%*							 *
 %*********************************************************
 
 Interface on offer:
@@ -103,11 +103,9 @@ showHex n r =
  showString "0x" $
  showIntAtBase 16 (toChrHex) n r
  where  
-  toChrHex d = 
-   if d < 10 then
-      chr (ord_0   + fromIntegral d)
-   else
-      chr (ord 'a' + fromIntegral (d - 10))
+  toChrHex d
+    | d < 10    = chr (ord_0   + fromIntegral d)
+    | otherwise = chr (ord 'a' + fromIntegral (d - 10))
 
 showOct :: Integral a => a -> ShowS
 showOct n r = 
@@ -117,6 +115,10 @@ showOct n r =
 
 \end{code}
 
+Controlling the format and precision of floats. The code that
+implements the formatting itself is in @PrelNum@ to avoid
+mutual module deps.
+
 \begin{code}
 showEFloat    :: (RealFloat a) => Maybe Int -> a -> ShowS
 showFFloat    :: (RealFloat a) => Maybe Int -> a -> ShowS
@@ -127,6 +129,3 @@ showFFloat d x =  showString (formatRealFloat FFFixed d x)
 showGFloat d x =  showString (formatRealFloat FFGeneric d x)
 
 \end{code}
-      
-  
-	   
diff --git a/ghc/lib/required/Prelude.lhs b/ghc/lib/required/Prelude.lhs
index 7f0dcc1861d487fb238a1a285e7577acc4ebf745..84dca26d754ada5d30778e5282e5d6ac6a63e2a5 100644
--- a/ghc/lib/required/Prelude.lhs
+++ b/ghc/lib/required/Prelude.lhs
@@ -19,7 +19,6 @@ module Prelude (
     Bounded(..), 
     Enum(..), succ, pred, 
     Show(..), ShowS, shows, show, showChar, showString, showParen,
-    Num(..), 
     Eval(..), seq, strict,
     Bool(..), (&&), (||), not, otherwise,
     Char, String, Int, Integer, Float, Double, Void,
@@ -47,7 +46,7 @@ module Prelude (
     Ratio, Rational, 
     (%), numerator, denominator, approxRational,
 
-    Num((+), (-), (*), negate, abs, signum, fromInteger),
+    Num((+), (-), (*), negate, abs, signum, fromInteger, fromInt{-glaExt-}),
     Real(toRational),
     Integral(quot, rem, div, mod, quotRem, divMod, toInteger, toInt{-partain-}),
     Fractional((/), recip, fromRational),
diff --git a/ghc/lib/required/Time.lhs b/ghc/lib/required/Time.lhs
index 30fe9acc84dacd0a4010ea8c93f74ac8f33dafbb..1866a1766784a5bb9e44cc0f6fe1534274176d55 100644
--- a/ghc/lib/required/Time.lhs
+++ b/ghc/lib/required/Time.lhs
@@ -13,15 +13,21 @@ its use of Coordinated Universal Time (UTC).
 
 module Time 
        (
-	CalendarTime(..),
         Month,
 	Day,
         CalendarTime(CalendarTime),
         TimeDiff(TimeDiff),
 	ClockTime(..), -- non-standard, lib. report gives this as abstract
-	getClockTime, addToClockTime, diffClockTimes,
-	toCalendarTime,	toUTCTime, toClockTime,
-        calendarTimeToString, formatCalendarTime
+
+	getClockTime, 
+	addToClockTime, 
+	diffClockTimes,
+
+	toCalendarTime,	
+	toUTCTime, 
+	toClockTime,
+        calendarTimeToString, 
+	formatCalendarTime
        ) where
 
 import PrelBase