diff --git a/pyopencl/clrandom.py b/pyopencl/clrandom.py
index b2575de69854d19b97a2423af00080e9954a0871..77a7e0126630b469428484cf0693f8891a5660d0 100644
--- a/pyopencl/clrandom.py
+++ b/pyopencl/clrandom.py
@@ -244,8 +244,8 @@ class RanluxGenerator(object):
             c_type = "long"
             rng_expr = ("(shift "
                     "+ convert_long4((float) scale * gen) "
-                    "+ convert_long4(((float) scale / (1<<24)) * gen)"
-                    "+ convert_long4(((float) scale / (1<<48)) * gen)"
+                    "+ convert_long4(((float) scale / (1l<<24)) * gen)"
+                    "+ convert_long4(((float) scale / (1l<<48)) * gen)"
                     ")")
 
         else: