Fix input() builtin function to respect compiler flags.
(SF patch 876178, patch by mwh, unittest by perky)
diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py
index db823ff..46f3d68 100644
--- a/Lib/test/test_builtin.py
+++ b/Lib/test/test_builtin.py
@@ -931,6 +931,19 @@
             self.assertEqual(input(), 'whitespace')
             sys.stdin = cStringIO.StringIO()
             self.assertRaises(EOFError, input)
+
+            # SF 876178: make sure input() respect future options.
+            sys.stdin = cStringIO.StringIO('1/2')
+            sys.stdout = cStringIO.StringIO()
+            exec compile('print input()', 'test_builtin_tmp', 'exec')
+            sys.stdin.seek(0, 0)
+            exec compile('from __future__ import division;print input()',
+                         'test_builtin_tmp', 'exec')
+            sys.stdin.seek(0, 0)
+            exec compile('print input()', 'test_builtin_tmp', 'exec')
+            self.assertEqual(sys.stdout.getvalue().splitlines(),
+                             ['0', '0.5', '0'])
+
             del sys.stdout
             self.assertRaises(RuntimeError, input, 'prompt')
             del sys.stdin