Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
aa061137
Commit
aa061137
authored
Dec 18, 2012
by
Andrew Svetlov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Issue #16714: use 'raise' exceptions, don't 'throw'.
Patch by Serhiy Storchaka.
parent
60988bb2
Changes
34
Show whitespace changes
Inline
Side-by-side
Showing
34 changed files
with
52 additions
and
52 deletions
+52
-52
Doc/howto/cporting.rst
Doc/howto/cporting.rst
+1
-1
Lib/asyncore.py
Lib/asyncore.py
+1
-1
Lib/distutils/tests/test_msvc9compiler.py
Lib/distutils/tests/test_msvc9compiler.py
+1
-1
Lib/email/feedparser.py
Lib/email/feedparser.py
+2
-2
Lib/email/header.py
Lib/email/header.py
+1
-1
Lib/httplib.py
Lib/httplib.py
+1
-1
Lib/io.py
Lib/io.py
+1
-1
Lib/lib-tk/Tkinter.py
Lib/lib-tk/Tkinter.py
+1
-1
Lib/logging/__init__.py
Lib/logging/__init__.py
+1
-1
Lib/runpy.py
Lib/runpy.py
+1
-1
Lib/test/test_codeop.py
Lib/test/test_codeop.py
+1
-1
Lib/test/test_docxmlrpc.py
Lib/test/test_docxmlrpc.py
+1
-1
Lib/test/test_imaplib.py
Lib/test/test_imaplib.py
+1
-1
Lib/test/test_minidom.py
Lib/test/test_minidom.py
+1
-1
Lib/test/test_os.py
Lib/test/test_os.py
+8
-8
Lib/test/test_pty.py
Lib/test/test_pty.py
+1
-1
Lib/test/test_sax.py
Lib/test/test_sax.py
+2
-2
Lib/test/test_signal.py
Lib/test/test_signal.py
+2
-2
Lib/test/test_socketserver.py
Lib/test/test_socketserver.py
+1
-1
Lib/test/test_sys_settrace.py
Lib/test/test_sys_settrace.py
+1
-1
Lib/test/test_time.py
Lib/test/test_time.py
+1
-1
Lib/test/test_uu.py
Lib/test/test_uu.py
+2
-2
Lib/test/test_winreg.py
Lib/test/test_winreg.py
+2
-2
Lib/test/test_zipfile.py
Lib/test/test_zipfile.py
+1
-1
Lib/traceback.py
Lib/traceback.py
+1
-1
Lib/unittest/case.py
Lib/unittest/case.py
+2
-2
Lib/wsgiref/validate.py
Lib/wsgiref/validate.py
+2
-2
Lib/xml/sax/_exceptions.py
Lib/xml/sax/_exceptions.py
+3
-3
Lib/xml/sax/xmlreader.py
Lib/xml/sax/xmlreader.py
+1
-1
Lib/xmlrpclib.py
Lib/xmlrpclib.py
+1
-1
Modules/_io/_iomodule.c
Modules/_io/_iomodule.c
+1
-1
Modules/parsermodule.c
Modules/parsermodule.c
+3
-3
Modules/posixmodule.c
Modules/posixmodule.c
+1
-1
Tools/scripts/serve.py
Tools/scripts/serve.py
+1
-1
No files found.
Doc/howto/cporting.rst
View file @
aa061137
...
...
@@ -253,7 +253,7 @@ behave slightly differently from real Capsules. Specifically:
* :c:func:`PyCapsule_GetName` always returns NULL.
* :c:func:`PyCapsule_SetName` always
throw
s an exception and
* :c:func:`PyCapsule_SetName` always
raise
s an exception and
returns failure. (Since there's no way to store a name
in a CObject, noisy failure of :c:func:`PyCapsule_SetName`
was deemed preferable to silent failure here. If this is
...
...
Lib/asyncore.py
View file @
aa061137
...
...
@@ -393,7 +393,7 @@ class dispatcher:
else
:
return
data
except
socket
.
error
,
why
:
# winsock sometimes
throw
s ENOTCONN
# winsock sometimes
raise
s ENOTCONN
if
why
.
args
[
0
]
in
_DISCONNECTED
:
self
.
handle_close
()
return
''
...
...
Lib/distutils/tests/test_msvc9compiler.py
View file @
aa061137
...
...
@@ -104,7 +104,7 @@ class msvc9compilerTestCase(support.TempdirManager,
unittest
.
TestCase
):
def
test_no_compiler
(
self
):
# makes sure query_vcvarsall
throw
s
# makes sure query_vcvarsall
raise
s
# a DistutilsPlatformError if the compiler
# is not found
from
distutils.msvc9compiler
import
query_vcvarsall
...
...
Lib/email/feedparser.py
View file @
aa061137
...
...
@@ -13,7 +13,7 @@ parser. It returns when there's nothing more it can do with the available
data. When you have no more data to push into the parser, call .close().
This completes the parsing and returns the root message object.
The other advantage of this parser is that it will never
throw
a parsing
The other advantage of this parser is that it will never
raise
a parsing
exception. Instead, when it finds something unexpected, it adds a 'defect' to
the current message. Defects are just instances that live on the message
object's .defects attribute.
...
...
@@ -214,7 +214,7 @@ class FeedParser:
# supposed to see in the body of the message.
self
.
_parse_headers
(
headers
)
# Headers-only parsing is a backwards compatibility hack, which was
# necessary in the older parser, which could
throw
errors. All
# necessary in the older parser, which could
raise
errors. All
# remaining lines in the input are thrown into the message body.
if
self
.
_headersonly
:
lines
=
[]
...
...
Lib/email/header.py
View file @
aa061137
...
...
@@ -103,7 +103,7 @@ def decode_header(header):
dec
=
email
.
base64mime
.
decode
(
encoded
)
except
binascii
.
Error
:
# Turn this into a higher level exception. BAW: Right
# now we
throw
the lower level exception away but
# now we
raise
the lower level exception away but
# when/if we get exception chaining, we'll preserve it.
raise
HeaderParseError
if
dec
is
None
:
...
...
Lib/httplib.py
View file @
aa061137
...
...
@@ -1068,7 +1068,7 @@ class HTTP:
if
port
==
0
:
port
=
None
# Note that we may pass an empty string as the host; this will
throw
# Note that we may pass an empty string as the host; this will
raise
# an error when we attempt to connect. Presumably, the client code
# will call connect before then, with a proper host.
self
.
_setup
(
self
.
_connection_class
(
host
,
port
,
strict
))
...
...
Lib/io.py
View file @
aa061137
...
...
@@ -4,7 +4,7 @@ builtin open function is defined in this module.
At the top of the I/O hierarchy is the abstract base class IOBase. It
defines the basic interface to a stream. Note, however, that there is no
separation between reading and writing to streams; implementations are
allowed to
throw
an IOError if they do not support a given operation.
allowed to
raise
an IOError if they do not support a given operation.
Extending IOBase is RawIOBase which deals simply with the reading and
writing of raw bytes to a stream. FileIO subclasses RawIOBase to provide
...
...
Lib/lib-tk/Tkinter.py
View file @
aa061137
...
...
@@ -155,7 +155,7 @@ def _tkerror(err):
pass
def
_exit
(
code
=
0
):
"""Internal function. Calling it will
throw
the exception SystemExit."""
"""Internal function. Calling it will
raise
the exception SystemExit."""
try
:
code
=
int
(
code
)
except
ValueError
:
...
...
Lib/logging/__init__.py
View file @
aa061137
...
...
@@ -1251,7 +1251,7 @@ class Logger(Filterer):
all the handlers of this logger to handle the record.
"""
if
_srcfile
:
#IronPython doesn't track Python frames, so findCaller
throw
s an
#IronPython doesn't track Python frames, so findCaller
raise
s an
#exception on some versions of IronPython. We trap it here so that
#IronPython can use logging.
try
:
...
...
Lib/runpy.py
View file @
aa061137
...
...
@@ -200,7 +200,7 @@ def _get_importer(path_name):
pass
else
:
# The following check looks a bit odd. The trick is that
# NullImporter
throw
s ImportError if the supplied path is a
# NullImporter
raise
s ImportError if the supplied path is a
# *valid* directory entry (and hence able to be handled
# by the standard import machinery)
try
:
...
...
Lib/test/test_codeop.py
View file @
aa061137
...
...
@@ -50,7 +50,7 @@ class CodeopTests(unittest.TestCase):
'''succeed iff str is the start of an invalid piece of code'''
try
:
compile_command
(
str
,
symbol
=
symbol
)
self
.
fail
(
"No exception
thrown
for invalid code"
)
self
.
fail
(
"No exception
raised
for invalid code"
)
except
SyntaxError
:
self
.
assertTrue
(
is_syntax
)
except
OverflowError
:
...
...
Lib/test/test_docxmlrpc.py
View file @
aa061137
...
...
@@ -100,7 +100,7 @@ class DocXMLRPCHTTPGETServer(unittest.TestCase):
self
.
assertEqual
(
response
.
status
,
200
)
self
.
assertEqual
(
response
.
getheader
(
"Content-type"
),
"text/html"
)
# Server
throw
s an exception if we don't start to read the data
# Server
raise
s an exception if we don't start to read the data
response
.
read
()
def
test_invalid_get_response
(
self
):
...
...
Lib/test/test_imaplib.py
View file @
aa061137
...
...
@@ -79,7 +79,7 @@ class SimpleIMAPHandler(SocketServer.StreamRequestHandler):
return
line
+=
part
except
IOError
:
# ..but SSLSockets
throw
exceptions.
# ..but SSLSockets
raise
exceptions.
return
if
line
.
endswith
(
'
\
r
\
n
'
):
break
...
...
Lib/test/test_minidom.py
View file @
aa061137
...
...
@@ -1060,7 +1060,7 @@ class MinidomTest(unittest.TestCase):
'<?xml version="1.0" encoding="iso-8859-15"?><foo>
\
xa4
</foo>'
,
"testEncodings - encoding EURO SIGN"
)
# Verify that character decoding errors
throw
exceptions instead
# Verify that character decoding errors
raise
exceptions instead
# of crashing
self
.
assertRaises
(
UnicodeDecodeError
,
parseString
,
'<fran
\
xe7
ais>Comment
\
xe7
a va ? Tr
\
xe8
s bien ?</fran
\
xe7
ais>'
)
...
...
Lib/test/test_os.py
View file @
aa061137
...
...
@@ -214,33 +214,33 @@ class StatAttributeTests(unittest.TestCase):
try
:
result
[
200
]
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
IndexError
:
pass
# Make sure that assignment fails
try
:
result
.
st_mode
=
1
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
(
AttributeError
,
TypeError
):
pass
try
:
result
.
st_rdev
=
1
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
(
AttributeError
,
TypeError
):
pass
try
:
result
.
parrot
=
1
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
AttributeError
:
pass
# Use the stat_result constructor with a too-short tuple.
try
:
result2
=
os
.
stat_result
((
10
,))
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
TypeError
:
pass
...
...
@@ -274,20 +274,20 @@ class StatAttributeTests(unittest.TestCase):
# Make sure that assignment really fails
try
:
result
.
f_bfree
=
1
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
TypeError
:
pass
try
:
result
.
parrot
=
1
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
AttributeError
:
pass
# Use the constructor with a too-short tuple.
try
:
result2
=
os
.
statvfs_result
((
10
,))
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
TypeError
:
pass
...
...
Lib/test/test_pty.py
View file @
aa061137
...
...
@@ -152,7 +152,7 @@ class PtyTest(unittest.TestCase):
# platform-dependent amount of data is written to its fd. On
# Linux 2.6, it's 4000 bytes and the child won't block, but on OS
# X even the small writes in the child above will block it. Also
# on Linux, the read() will
throw
an OSError (input/output error)
# on Linux, the read() will
raise
an OSError (input/output error)
# when it tries to read past the end of the buffer but the child's
# already exited, so catch and discard those exceptions. It's not
# worth checking for EIO.
...
...
Lib/test/test_sax.py
View file @
aa061137
...
...
@@ -294,7 +294,7 @@ class XmlgenTest(unittest.TestCase):
def
test_5027_1
(
self
):
# The xml prefix (as in xml:lang below) is reserved and bound by
# definition to http://www.w3.org/XML/1998/namespace. XMLGenerator had
# a bug whereby a KeyError is
thrown
because this namespace is missing
# a bug whereby a KeyError is
raised
because this namespace is missing
# from a dictionary.
#
# This test demonstrates the bug by parsing a document.
...
...
@@ -320,7 +320,7 @@ class XmlgenTest(unittest.TestCase):
def
test_5027_2
(
self
):
# The xml prefix (as in xml:lang below) is reserved and bound by
# definition to http://www.w3.org/XML/1998/namespace. XMLGenerator had
# a bug whereby a KeyError is
thrown
because this namespace is missing
# a bug whereby a KeyError is
raised
because this namespace is missing
# from a dictionary.
#
# This test demonstrates the bug by direct manipulation of the
...
...
Lib/test/test_signal.py
View file @
aa061137
...
...
@@ -109,7 +109,7 @@ class InterProcessSignalTests(unittest.TestCase):
# This wait should be interrupted by the signal's exception.
self
.
wait
(
child
)
time
.
sleep
(
1
)
# Give the signal time to be delivered.
self
.
fail
(
'HandlerBCalled exception not
thrown
'
)
self
.
fail
(
'HandlerBCalled exception not
raised
'
)
except
HandlerBCalled
:
self
.
assertTrue
(
self
.
b_called
)
self
.
assertFalse
(
self
.
a_called
)
...
...
@@ -148,7 +148,7 @@ class InterProcessSignalTests(unittest.TestCase):
# test-running process from all the signals. It then
# communicates with that child process over a pipe and
# re-raises information about any exceptions the child
#
throw
s. The real work happens in self.run_test().
#
raise
s. The real work happens in self.run_test().
os_done_r
,
os_done_w
=
os
.
pipe
()
with
closing
(
os
.
fdopen
(
os_done_r
))
as
done_r
,
\
closing
(
os
.
fdopen
(
os_done_w
,
'w'
))
as
done_w
:
...
...
Lib/test/test_socketserver.py
View file @
aa061137
...
...
@@ -58,7 +58,7 @@ if HAVE_UNIX_SOCKETS:
def
simple_subprocess
(
testcase
):
pid
=
os
.
fork
()
if
pid
==
0
:
# Don't
throw
an exception; it would be caught by the test harness.
# Don't
raise
an exception; it would be caught by the test harness.
os
.
_exit
(
72
)
yield
None
pid2
,
status
=
os
.
waitpid
(
pid
,
0
)
...
...
Lib/test/test_sys_settrace.py
View file @
aa061137
...
...
@@ -417,7 +417,7 @@ class RaisingTraceFuncTestCase(unittest.TestCase):
except
ValueError
:
pass
else
:
self
.
fail
(
"exception not
thrown
!"
)
self
.
fail
(
"exception not
raised
!"
)
except
RuntimeError
:
self
.
fail
(
"recursion counter not reset"
)
...
...
Lib/test/test_time.py
View file @
aa061137
...
...
@@ -106,7 +106,7 @@ class TimeTestCase(unittest.TestCase):
def
test_strptime
(
self
):
# Should be able to go round-trip from strftime to strptime without
#
throw
ing an exception.
#
rais
ing an exception.
tt
=
time
.
gmtime
(
self
.
t
)
for
directive
in
(
'a'
,
'A'
,
'b'
,
'B'
,
'c'
,
'd'
,
'H'
,
'I'
,
'j'
,
'm'
,
'M'
,
'p'
,
'S'
,
...
...
Lib/test/test_uu.py
View file @
aa061137
...
...
@@ -48,7 +48,7 @@ class UUTest(unittest.TestCase):
out
=
cStringIO
.
StringIO
()
try
:
uu
.
decode
(
inp
,
out
)
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
uu
.
Error
,
e
:
self
.
assertEqual
(
str
(
e
),
"Truncated input file"
)
...
...
@@ -57,7 +57,7 @@ class UUTest(unittest.TestCase):
out
=
cStringIO
.
StringIO
()
try
:
uu
.
decode
(
inp
,
out
)
self
.
fail
(
"No exception
thrown
"
)
self
.
fail
(
"No exception
raised
"
)
except
uu
.
Error
,
e
:
self
.
assertEqual
(
str
(
e
),
"No valid begin line found in input file"
)
...
...
Lib/test/test_winreg.py
View file @
aa061137
...
...
@@ -234,7 +234,7 @@ class LocalWinregTests(BaseWinregTests):
def
test_changing_value
(
self
):
# Issue2810: A race condition in 2.6 and 3.1 may cause
# EnumValue or QueryValue to
throw
"WindowsError: More data is
# EnumValue or QueryValue to
raise
"WindowsError: More data is
# available"
done
=
False
...
...
@@ -282,7 +282,7 @@ class LocalWinregTests(BaseWinregTests):
def
test_dynamic_key
(
self
):
# Issue2810, when the value is dynamically generated, these
#
throw
"WindowsError: More data is available" in 2.6 and 3.1
#
raise
"WindowsError: More data is available" in 2.6 and 3.1
try
:
EnumValue
(
HKEY_PERFORMANCE_DATA
,
0
)
except
OSError
as
e
:
...
...
Lib/test/test_zipfile.py
View file @
aa061137
...
...
@@ -811,7 +811,7 @@ class OtherTests(unittest.TestCase):
with
zipfile
.
ZipFile
(
data
,
mode
=
"w"
)
as
zipf
:
zipf
.
writestr
(
"foo.txt"
,
"O, for a Muse of Fire!"
)
# This is correct; calling .read on a closed ZipFile should
throw
# This is correct; calling .read on a closed ZipFile should
raise
# a RuntimeError, and so should calling .testzip. An earlier
# version of .testzip would swallow this exception (and any other)
# and report that the first file in the archive was corrupt.
...
...
Lib/traceback.py
View file @
aa061137
...
...
@@ -166,7 +166,7 @@ def format_exception_only(etype, value):
# >>> raise string1, string2 # deprecated
#
# Clear these out first because issubtype(string1, SyntaxError)
# would
throw
another exception and mask the original problem.
# would
raise
another exception and mask the original problem.
if
(
isinstance
(
etype
,
BaseException
)
or
isinstance
(
etype
,
types
.
InstanceType
)
or
etype
is
None
or
type
(
etype
)
is
str
):
...
...
Lib/unittest/case.py
View file @
aa061137
...
...
@@ -447,10 +447,10 @@ class TestCase(object):
def
assertRaises
(
self
,
excClass
,
callableObj
=
None
,
*
args
,
**
kwargs
):
"""Fail unless an exception of class excClass is
thrown
"""Fail unless an exception of class excClass is
raised
by callableObj when invoked with arguments args and keyword
arguments kwargs. If a different type of exception is
thrown
, it will not be caught, and the test case will be
raised
, it will not be caught, and the test case will be
deemed to have suffered an error, exactly as for an
unexpected exception.
...
...
Lib/wsgiref/validate.py
View file @
aa061137
...
...
@@ -134,9 +134,9 @@ def validator(application):
When applied between a WSGI server and a WSGI application, this
middleware will check for WSGI compliancy on a number of levels.
This middleware does not modify the request or response in any
way, but will
throw
an AssertionError if anything seems off
way, but will
raise
an AssertionError if anything seems off
(except for a failure to close the application iterator, which
will be printed to stderr -- there'
s
no
way
to
throw
an
exception
will be printed to stderr -- there'
s
no
way
to
raise
an
exception
at
that
point
).
"""
...
...
Lib/xml/sax/_exceptions.py
View file @
aa061137
...
...
@@ -12,7 +12,7 @@ class SAXException(Exception):
the application: you can subclass it to provide additional
functionality, or to add localization. Note that although you will
receive a SAXException as the argument to the handlers in the
ErrorHandler interface, you are not actually required to
throw
ErrorHandler interface, you are not actually required to
raise
the exception; instead, you can simply read the information in
it."""
...
...
@@ -50,7 +50,7 @@ class SAXParseException(SAXException):
the original XML document. Note that although the application will
receive a SAXParseException as the argument to the handlers in the
ErrorHandler interface, the application is not actually required
to
throw
the exception; instead, it can simply read the
to
raise
the exception; instead, it can simply read the
information in it and take a different action.
Since this exception is a subclass of SAXException, it inherits
...
...
@@ -62,7 +62,7 @@ class SAXParseException(SAXException):
self
.
_locator
=
locator
# We need to cache this stuff at construction time.
# If this exception is
thrown
, the objects through which we must
# If this exception is
raised
, the objects through which we must
# traverse to get this information may be deleted by the time
# it gets caught.
self
.
_systemId
=
self
.
_locator
.
getSystemId
()
...
...
Lib/xml/sax/xmlreader.py
View file @
aa061137
...
...
@@ -68,7 +68,7 @@ class XMLReader:
SAX parsers are not required to provide localization for errors
and warnings; if they cannot support the requested locale,
however, they must
throw
a SAX exception. Applications may
however, they must
raise
a SAX exception. Applications may
request a locale change in the middle of a parse."""
raise
SAXNotSupportedException
(
"Locale support not implemented"
)
...
...
Lib/xmlrpclib.py
View file @
aa061137
...
...
@@ -945,7 +945,7 @@ class _MultiCallMethod:
class
MultiCallIterator
:
"""Iterates over the results of a multicall. Exceptions are
thrown
in response to xmlrpc faults."""
raised
in response to xmlrpc faults."""
def
__init__
(
self
,
results
):
self
.
results
=
results
...
...
Modules/_io/_iomodule.c
View file @
aa061137
...
...
@@ -59,7 +59,7 @@ PyDoc_STRVAR(module_doc,
"At the top of the I/O hierarchy is the abstract base class IOBase. It
\n
"
"defines the basic interface to a stream. Note, however, that there is no
\n
"
"separation between reading and writing to streams; implementations are
\n
"
"allowed to
throw
an IOError if they do not support a given operation.
\n
"
"allowed to
raise
an IOError if they do not support a given operation.
\n
"
"
\n
"
"Extending IOBase is RawIOBase which deals simply with the reading and
\n
"
"writing of raw bytes to a stream. FileIO subclasses RawIOBase to provide
\n
"
...
...
Modules/parsermodule.c
View file @
aa061137
...
...
@@ -698,7 +698,7 @@ parser_tuple2st(PyST_Object *self, PyObject *args, PyObject *kw)
err_string
(
"parse tree does not use a valid start symbol"
);
}
}
/* Make sure we
throw
an exception on all errors. We should never
/* Make sure we
raise
an exception on all errors. We should never
* get this, but we'd do well to be sure something is done.
*/
if
(
st
==
NULL
&&
!
PyErr_Occurred
())
...
...
@@ -813,7 +813,7 @@ build_node_children(PyObject *tuple, node *root, int *line_num)
else
if
(
!
ISNONTERMINAL
(
type
))
{
/*
* It has to be one or the other; this is an error.
*
Throw
an exception.
*
Raise
an exception.
*/
PyObject
*
err
=
Py_BuildValue
(
"os"
,
elem
,
"unknown node type."
);
PyErr_SetObject
(
parser_error
,
err
);
...
...
@@ -863,7 +863,7 @@ build_node_tree(PyObject *tuple)
if
(
ISTERMINAL
(
num
))
{
/*
* The tuple is simple, but it doesn't start with a start symbol.
*
Throw
an exception now and be done with it.
*
Raise
an exception now and be done with it.
*/
tuple
=
Py_BuildValue
(
"os"
,
tuple
,
"Illegal syntax-tree; cannot start with terminal symbol."
);
...
...
Modules/posixmodule.c
View file @
aa061137
...
...
@@ -349,7 +349,7 @@ extern int lstat(const char *, struct stat *);
#if defined _MSC_VER && _MSC_VER >= 1400
/* Microsoft CRT in VS2005 and higher will verify that a filehandle is
* valid and
throw
an assertion if it isn't.
* valid and
raise
an assertion if it isn't.
* Normally, an invalid fd is likely to be a C program error and therefore
* an assertion can be useful, but it does contradict the POSIX standard
* which for write(2) states:
...
...
Tools/scripts/serve.py
View file @
aa061137
...
...
@@ -2,7 +2,7 @@
'''
Small wsgiref based web server. Takes a path to serve from and an
optional port number (defaults to 8000), then tries to serve files.
Mime types are guessed from the file names, 404 errors are
thrown
Mime types are guessed from the file names, 404 errors are
raised
if the file is not found. Used for the make serve target in Doc.
'''
import
sys
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment