diff --git a/Lib/plat-os2emx/_emx_link.py b/Lib/plat-os2emx/_emx_link.py
index e829868..01e6b54 100644
--- a/Lib/plat-os2emx/_emx_link.py
+++ b/Lib/plat-os2emx/_emx_link.py
@@ -47,7 +47,7 @@
 
     s = os.open(source, os.O_RDONLY | os.O_BINARY)
     if os.isatty(s):
-        raise OSError, (errno.EXDEV, 'Cross-device link')
+        raise OSError(errno.EXDEV, 'Cross-device link')
     data = os.read(s, 1024)
 
     try:
diff --git a/Lib/plat-os2emx/grp.py b/Lib/plat-os2emx/grp.py
index fceb4c9..2ac3ca6 100644
--- a/Lib/plat-os2emx/grp.py
+++ b/Lib/plat-os2emx/grp.py
@@ -94,7 +94,7 @@
     if fs:
         return fs
     else:
-        raise KeyError, '>> group database fields not delimited <<'
+        raise KeyError('>> group database fields not delimited <<')
 
 # class to match the new record field name accessors.
 # the resulting object is intended to behave like a read-only tuple,
@@ -136,7 +136,7 @@
     if group_file:
         group = open(group_file, 'r')
     else:
-        raise KeyError, '>> no group database <<'
+        raise KeyError('>> no group database <<')
     gidx = {}
     namx = {}
     sep = None
diff --git a/Lib/plat-os2emx/pwd.py b/Lib/plat-os2emx/pwd.py
index 95d766a..4924c90 100644
--- a/Lib/plat-os2emx/pwd.py
+++ b/Lib/plat-os2emx/pwd.py
@@ -113,7 +113,7 @@
     if fs:
         return fs
     else:
-        raise KeyError, '>> passwd database fields not delimited <<'
+        raise KeyError('>> passwd database fields not delimited <<')
 
 # class to match the new record field name accessors.
 # the resulting object is intended to behave like a read-only tuple,
@@ -160,7 +160,7 @@
     if passwd_file:
         passwd = open(passwd_file, 'r')
     else:
-        raise KeyError, '>> no password database <<'
+        raise KeyError('>> no password database <<')
     uidx = {}
     namx = {}
     sep = None
