Kaydet (Commit) 61c345fa authored tarafından Guido van Rossum's avatar Guido van Rossum

Rename the -D option to -Q, to avoid a Jython option name conflict.

üst a1c1b0f4
...@@ -32,14 +32,14 @@ Core ...@@ -32,14 +32,14 @@ Core
this situation, and -Werror::OverflowWarning to revert to the old this situation, and -Werror::OverflowWarning to revert to the old
OverflowError exception. OverflowError exception.
- A new command line option, -D<arg>, is added to control run-time - A new command line option, -Q<arg>, is added to control run-time
warnings for the use of classic division. (See PEP 238.) Possible warnings for the use of classic division. (See PEP 238.) Possible
values are -Dold, -Dwarn, and -Dnew. The default is -Dold, meaning values are -Qold, -Qwarn, and -Qnew. The default is -Qold, meaning
the / operator has its classic meaning and no warnings are issued. the / operator has its classic meaning and no warnings are issued.
Using -Dwarn issues a run-time warning about all uses of classic Using -Qwarn issues a run-time warning about all uses of classic
division for int, long, float and complex arguments. Using -Dnew is division for int, long, float and complex arguments. Using -Qnew is
questionable; it turns on new division by default, but only in the questionable; it turns on new division by default, but only in the
__main__ module. You can usefully combine -Dwarn and -Dnew: this __main__ module. You can usefully combine -Qwarn and -Qnew: this
gives the __main__ module new division, and warns about classic gives the __main__ module new division, and warns about classic
division everywhere else. division everywhere else.
......
...@@ -29,7 +29,7 @@ static char **orig_argv; ...@@ -29,7 +29,7 @@ static char **orig_argv;
static int orig_argc; static int orig_argc;
/* command line options */ /* command line options */
#define BASE_OPTS "c:dD:EhiOStuUvVW:xX" #define BASE_OPTS "c:dEhiOQ:StuUvVW:xX"
#ifndef RISCOS #ifndef RISCOS
#define PROGRAM_OPTS BASE_OPTS #define PROGRAM_OPTS BASE_OPTS
...@@ -50,15 +50,15 @@ static char *usage_1 = "\ ...@@ -50,15 +50,15 @@ static char *usage_1 = "\
Options and arguments (and corresponding environment variables):\n\ Options and arguments (and corresponding environment variables):\n\
-c cmd : program passed in as string (terminates option list)\n\ -c cmd : program passed in as string (terminates option list)\n\
-d : debug output from parser (also PYTHONDEBUG=x)\n\ -d : debug output from parser (also PYTHONDEBUG=x)\n\
-D arg : division options: -Dold (default), -Dwarn, -Dnew\n\
-E : ignore environment variables (such as PYTHONPATH)\n\ -E : ignore environment variables (such as PYTHONPATH)\n\
-h : print this help message and exit\n\ -h : print this help message and exit\n\
";
static char *usage_2 = "\
-i : inspect interactively after running script, (also PYTHONINSPECT=x)\n\ -i : inspect interactively after running script, (also PYTHONINSPECT=x)\n\
and force prompts, even if stdin does not appear to be a terminal\n\ and force prompts, even if stdin does not appear to be a terminal\n\
";
static char *usage_2 = "\
-O : optimize generated bytecode (a tad; also PYTHONOPTIMIZE=x)\n\ -O : optimize generated bytecode (a tad; also PYTHONOPTIMIZE=x)\n\
-OO : remove doc-strings in addition to the -O optimizations\n\ -OO : remove doc-strings in addition to the -O optimizations\n\
-Q arg : division options: -Qold (default), -Qwarn, -Qnew\n\
-S : don't imply 'import site' on initialization\n\ -S : don't imply 'import site' on initialization\n\
-t : issue warnings about inconsistent tab usage (-tt: issue errors)\n\ -t : issue warnings about inconsistent tab usage (-tt: issue errors)\n\
-u : unbuffered binary stdout and stderr (also PYTHONUNBUFFERED=x)\n\ -u : unbuffered binary stdout and stderr (also PYTHONUNBUFFERED=x)\n\
...@@ -155,7 +155,7 @@ Py_Main(int argc, char **argv) ...@@ -155,7 +155,7 @@ Py_Main(int argc, char **argv)
Py_DebugFlag++; Py_DebugFlag++;
break; break;
case 'D': case 'Q':
if (strcmp(_PyOS_optarg, "old") == 0) { if (strcmp(_PyOS_optarg, "old") == 0) {
Py_DivisionWarningFlag = 0; Py_DivisionWarningFlag = 0;
break; break;
...@@ -170,8 +170,8 @@ Py_Main(int argc, char **argv) ...@@ -170,8 +170,8 @@ Py_Main(int argc, char **argv)
break; break;
} }
fprintf(stderr, fprintf(stderr,
"-D option should be " "-Q option should be "
"`-Dold', `-Dwarn' or `-Dnew' only\n"); "`-Qold', `-Qwarn' or `-Qnew' only\n");
usage(2, argv[0]); usage(2, argv[0]);
/* NOTREACHED */ /* NOTREACHED */
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
"""fixdiv - tool to fix division operators. """fixdiv - tool to fix division operators.
To use this tool, first run `python -Dwarn yourscript.py 2>warnings'. To use this tool, first run `python -Qwarn yourscript.py 2>warnings'.
This runs the script `yourscript.py' while writing warning messages This runs the script `yourscript.py' while writing warning messages
about all uses of the classic division operator to the file about all uses of the classic division operator to the file
`warnings'. The warnings look like this: `warnings'. The warnings look like this:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment