diff --git a/pyopencl/__init__.py b/pyopencl/__init__.py
index c8390361ade9183d48fd9c3255ac4a065b6966af..7576680e0b596c42605f4532a02687ae6f539486 100644
--- a/pyopencl/__init__.py
+++ b/pyopencl/__init__.py
@@ -358,7 +358,12 @@ class Program(object):
 
     # {{{ build
 
-    _find_unsafe = re.compile(br'[^\w@%+=:,./-]', re.ASCII).search
+    if six.PY3:
+        _find_unsafe_re_opts = re.ASCII
+    else:
+        _find_unsafe_re_opts = 0
+
+    _find_unsafe = re.compile(br'[^\w@%+=:,./-]', _find_unsafe_re_opts).search
 
     @classmethod
     def _shlex_quote(cls, s):