Going through Project Euler I am comparing my solutions to the ones here.
For question 8 my code produces the correct answer (confirmed via the check sum on the website)
What is happening is that digitToInt returns an Int, which on 32-bit systems is too short to hold the test numbers when 5 is increased to 13. Change it to (fromIntegral . digitToInt) and it works correctly.
digitToInt
Int
(fromIntegral . digitToInt)