summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/library/sys.rst5
-rw-r--r--Include/pydebug.h1
-rw-r--r--Misc/NEWS2
-rw-r--r--Modules/main.c5
-rw-r--r--Python/pythonrun.c1
-rw-r--r--Python/sysmodule.c4
6 files changed, 14 insertions, 4 deletions
diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst
index 6aaf10c..d10defb 100644
--- a/Doc/library/sys.rst
+++ b/Doc/library/sys.rst
@@ -264,6 +264,11 @@ always available.
+------------------------------+------------------------------------------+
| :const:`bytes_warning` | -b |
+------------------------------+------------------------------------------+
+ | :const:`quiet` | -q |
+ +------------------------------+------------------------------------------+
+
+ .. versionchanged:: 3.2
+ Added ``quiet`` attribute for the new :option:`-q` flag.
.. data:: float_info
diff --git a/Include/pydebug.h b/Include/pydebug.h
index 1cbb342..70c88f6 100644
--- a/Include/pydebug.h
+++ b/Include/pydebug.h
@@ -7,6 +7,7 @@ extern "C" {
PyAPI_DATA(int) Py_DebugFlag;
PyAPI_DATA(int) Py_VerboseFlag;
+PyAPI_DATA(int) Py_QuietFlag;
PyAPI_DATA(int) Py_InteractiveFlag;
PyAPI_DATA(int) Py_InspectFlag;
PyAPI_DATA(int) Py_OptimizeFlag;
diff --git a/Misc/NEWS b/Misc/NEWS
index 674ae64..f69abcf 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -15,6 +15,8 @@ Core and Builtins
- Issue #10779: PyErr_WarnExplicit() decodes the filename from the filesystem
encoding instead of UTF-8.
+- Add sys.flags attribute for the new -q command-line option.
+
Library
-------
diff --git a/Modules/main.c b/Modules/main.c
index 3803eee..93d093d 100644
--- a/Modules/main.c
+++ b/Modules/main.c
@@ -319,7 +319,6 @@ Py_Main(int argc, wchar_t **argv)
int stdin_is_interactive = 0;
int help = 0;
int version = 0;
- int quiet = 0;
int saw_unbuffered_flag = 0;
PyCompilerFlags cf;
@@ -427,7 +426,7 @@ Py_Main(int argc, wchar_t **argv)
break;
case 'q':
- quiet++;
+ Py_QuietFlag++;
break;
/* This space reserved for other options */
@@ -594,7 +593,7 @@ Py_Main(int argc, wchar_t **argv)
#endif
Py_Initialize();
- if (!quiet && (Py_VerboseFlag ||
+ if (!Py_QuietFlag && (Py_VerboseFlag ||
(command == NULL && filename == NULL &&
module == NULL && stdin_is_interactive))) {
fprintf(stderr, "Python %s on %s\n",
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index f7335a2..e3836b8 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -78,6 +78,7 @@ extern void _PyGILState_Fini(void);
int Py_DebugFlag; /* Needed by parser.c */
int Py_VerboseFlag; /* Needed by import.c */
+int Py_QuietFlag; /* Needed by sysmodule.c */
int Py_InteractiveFlag; /* Needed by Py_FdIsInteractive() below */
int Py_InspectFlag; /* Needed to determine whether to exit at SystemError */
int Py_NoSiteFlag; /* Suppress 'import site' */
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index 0a14f0e..730567e 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -1417,7 +1417,8 @@ static PyStructSequence_Field flags_fields[] = {
#endif
/* {"unbuffered", "-u"}, */
/* {"skip_first", "-x"}, */
- {"bytes_warning", "-b"},
+ {"bytes_warning", "-b"},
+ {"quiet", "-q"},
{0}
};
@@ -1461,6 +1462,7 @@ make_flags(void)
/* SetFlag(saw_unbuffered_flag); */
/* SetFlag(skipfirstline); */
SetFlag(Py_BytesWarningFlag);
+ SetFlag(Py_QuietFlag);
#undef SetFlag
if (PyErr_Occurred()) {