diff --git a/src/Data/Symbol/Ascii.hs b/src/Data/Symbol/Ascii.hs
--- a/src/Data/Symbol/Ascii.hs
+++ b/src/Data/Symbol/Ascii.hs
@@ -4,7 +4,12 @@
 {-# LANGUAGE KindSignatures #-}
 {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE DataKinds #-}
+{-# LANGUAGE CPP #-}
 
+#if __GLASGOW_HASKELL__ >= 806
+{-# LANGUAGE NoStarIsType #-}
+#endif
+
 module Data.Symbol.Ascii
   (
     Head
@@ -133,7 +138,7 @@
 
 type family ReadNat1 (sym :: [Symbol]) (n :: Nat) :: Nat where
   ReadNat1 '[] acc = acc
-  ReadNat1 (x ': xs) acc = ReadNat1 xs (acc * 10 + ReadDigit x)
+  ReadNat1 (x ': xs) acc = ReadNat1 xs (10 * acc + ReadDigit x)
 
 type family ReadDigit (sym :: Symbol) :: Nat where
   ReadDigit "0" = 0
diff --git a/symbols.cabal b/symbols.cabal
--- a/symbols.cabal
+++ b/symbols.cabal
@@ -1,5 +1,5 @@
 name:                symbols
-version:             0.2.0.0
+version:             0.2.0.1
 synopsis:            Symbol manipulation
 description:         Utilities for manipulating type-level strings natively.
 license:             BSD3
