Have regrtest skip test_py3kwarn when the -3 flag is missing.
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index 16f23f3..f8eac8c 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -1164,6 +1164,14 @@
                 self.expected.add('test_sunaudiodev')
                 self.expected.add('test_nis')
 
+            # TODO: This is a hack to raise TestSkipped if -3 is not enabled.
+            # Instead of relying on callable to have a warning, we should expose
+            # the -3 flag to Python code somehow
+            with test_support.catch_warning() as w:
+                callable(int)
+                if w.message is None:
+                    self.expected.add('test_py3kwarn')
+
             self.valid = True
 
     def isvalid(self):