summaryrefslogtreecommitdiffstats
path: root/Parser
Commit message (Collapse)AuthorAgeFilesLines
* Fis SF bug #442647: not all forms of legal future statements wereGuido van Rossum2001-07-191-3/+9
| | | | parsed correctly. Now they are.
* Add a really stupid warning about 'yield' used as an identifier.Guido van Rossum2001-07-171-0/+12
| | | | | | | | | | | | | | | This is really stupid because it cannot be suppressed or altered using the warning framework; that's because the warning framework is built on Python interpreter internals, and the parser generator doesn't have access to any of those (you cannot use anything of type PyObject * in the parser). But it's better than nothing, and implementing a proper check for this appears to require modifying compile.c in a dozen places, for which I don't have the stamina today. I promise we'll do better in 2.2a2. At least it tells you the filename and line number (unlike the first hack I considered :-).
* Ugly. A pile of new xxxFlags() functions, to communicate to the parserTim Peters2001-07-161-5/+22
| | | | | | | | | | | | | | | | | | | | | | | that 'yield' is a keyword. This doesn't help test_generators at all! I don't know why not. These things do work now (and didn't before this patch): 1. "from __future__ import generators" now works in a native shell. 2. Similarly "python -i xxx.py" now has generators enabled in the shell if xxx.py had them enabled. 3. This program (which was my doctest proxy) works fine: from __future__ import generators source = """\ def f(): yield 1 """ exec compile(source, "", "single") in globals() print type(f())
* Preliminary support for "from __future__ import generators" to enableGuido van Rossum2001-07-152-3/+36
| | | | | | | | the yield statement. I figure we have to have this in before I can release 2.2a1 on Wednesday. Note: test_generators is currently broken, I'm counting on Tim to fix this.
* SF but #417587: compiler warnings compiling 2.1.Tim Peters2001-04-211-3/+0
| | | | Repaired *some* of the SGI compiler warnings Sjoerd Mullender reported.
* RISCOS changes by dschwertberger.Guido van Rossum2001-03-022-0/+17
|
* Take output filenames as arguments instead of hard-coding them.Neil Schemenauer2001-02-161-9/+14
|
* Superseded by $(srcdir)/Makefile.pre.in.Neil Schemenauer2001-02-031-103/+0
|
* Fix a bug in stack overflow error handling. This fixes half of BugGuido van Rossum2000-10-021-1/+1
| | | | | | | | | | | #115555. The error from s_push() on stack overflow was -1, which was passed through unchanged by push(), but not tested for by push()'s caller -- which only expected positive error codes. Fixed by changing s_push() to return E_NOMEM on stack overflow. (Not quite the proper error code either, but I can't be bothered adding a new E_STACKOVERFLOW error code in all the right places.)
* More limits.h stuff in node.c.Tim Peters2000-09-261-9/+1
| | | | Fred, check this!
* Rationalize use of limits.h, moving the inclusion to Python.h.Fred Drake2000-09-261-3/+0
| | | | | | | | Add definitions of INT_MAX and LONG_MAX to pyport.h. Remove includes of limits.h and conditional definitions of INT_MAX and LONG_MAX elsewhere. This closes SourceForge patch #101659 and bug #115323.
* Move down the INT_MAX logic, because HAVE_LIMITS_H was always undefinedVladimir Marangozov2000-09-031-6/+6
| | | | | | and this breaks the AIX build with an INT_MAX redefinition error. "config.h" is included in pgenheaders.h, so moving this down fixes the problem.
* REMOVED all CWI, CNRI and BeOpen copyright markings.Guido van Rossum2000-09-0120-180/+0
| | | | This should match the situation in the 1.6b1 tree.
* Added a little more dependency information.Fred Drake2000-08-311-1/+1
|
* Charles Waldman's patch to reinitialize the interpreter lock after aGuido van Rossum2000-08-271-0/+3
| | | | | | | fork. This solves the test_fork1 problem. (ceval.c, signalmodule.c, intrcheck.c) SourceForge: [ Patch #101226 ] make threading fork-safe
* Support for three-token characters (**=, >>=, <<=) which was written byThomas Wouters2000-08-242-0/+106
| | | | | Michael Hudson, and support in general for the augmented assignment syntax. The graminit.c patch is large!
* Charles G. Waldman <cgw@fnal.gov>:Fred Drake2000-08-241-1/+6
| | | | | | | | | Add the EXTENDED_ARG opcode to the virtual machine, allowing 32-bit arguments to opcodes instead of being forced to stick to the 16-bit limit. This is especially useful for machine-generated code, which can be too long for the SET_LINENO parameter to fit into 16 bits. This closes the implementation portion of SourceForge patch #100893.
* Simplified inclusions and avoid prototypes copied in from elsewhere.Fred Drake2000-08-231-12/+1
| | | | This also avoids a warning in anal mode.
* PyParser_ParseString(): When the err_ret structure is initialized, theBarry Warsaw2000-08-181-0/+2
| | | | | | fields token and expected must also be initialized, otherwise the tests in parsetok() can generate uninitialized memory read errors. This quiets an Insure warning.
* merge Include/my*.h into Include/pyport.hPeter Schneider-Kamp2000-07-311-1/+0
| | | | marked my*.h as obsolete
* Use 'void' directly instead of the ANY #define, now that all code is ANSI C.Thomas Wouters2000-07-251-2/+1
| | | | Leave the actual #define in for API compatibility.
* Removed all instances of RETSIGTYPE from the source code: signalTim Peters2000-07-231-3/+2
| | | | | | | handlers "return void", according to ANSI C. Removed the new Py_RETURN_FROM_SIGNAL_HANDLER macro. Left RETSIGTYPE in the config stuff, because it's not clear to me that others aren't relying on it (e.g., extension modules).
* Recent ANSIfication introduced a couple instances ofTim Peters2000-07-231-3/+1
| | | | | | | | | | | #if RETSIGTYPE != void That isn't C, and MSVC properly refuses to compile it. Introduced new Py_RETURN_FROM_SIGNAL_HANDLER macro in pyport.h to expand to the correct thing based on RETSIGTYPE. However, only void is ANSI! Do we still have platforms that return int? The Unix config mess appears to #define RETSIGTYPE by magic without being asked to, so I assume it's "a problem" across Unices still.
* Remember to return something if RETSIGTYPE is not 'void'. Do we still needThomas Wouters2000-07-221-0/+3
| | | | | to worry about systems that have signal-handlers return 'int' ? Not all of the code does, though nothing will break because of it.
* Mass ANSIfication.Thomas Wouters2000-07-2216-330/+123
| | | | | | Work around intrcheck.c's desire to pass 'PyErr_CheckSignals' to 'Py_AddPendingCall' by providing a (static) wrapper function that has the right number of arguments.
* Spelling fixes supplied by Rob W. W. Hooft. All these are fixes in eitherThomas Wouters2000-07-161-1/+1
| | | | | | | | | | comments, docstrings or error messages. I fixed two minor things in test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't"). There is a minor style issue involved: Guido seems to have preferred English grammar (behaviour, honour) in a couple places. This patch changes that to American, which is the more prominent style in the source. I prefer English myself, so if English is preferred, I'd be happy to supply a patch myself ;)
* Create two new exceptions: IndentationError and TabError. These areFred Drake2000-07-114-13/+20
| | | | | | | used for indentation related errors. This patch includes Ping's improvements for indentation-related error messages. Closes SourceForge patches #100734 and #100856.
* Nuke all remaining occurrences of Py_PROTO and Py_FPROTO.Tim Peters2000-07-0916-54/+51
|
* Include limits.h if we have it.Jack Jansen2000-07-031-0/+3
|
* Change copyright notice - 2nd try.Guido van Rossum2000-06-3020-120/+0
|
* Change copyright notice.Guido van Rossum2000-06-3020-429/+129
|
* Trent Mick: familiar simple Win64 patchesGuido van Rossum2000-06-284-11/+14
|
* Jack Jansen: Removed Macintosh tab-guessing codeGuido van Rossum2000-06-281-7/+0
|
* Add new parser error code, E_OVERFLOW. This error is returned whenJeremy Hylton2000-06-202-17/+23
| | | | | | the number of children of a node exceeds the max possible value for the short that is used to count them. The Python runtime converts this parser error into the SyntaxError "expression too long."
* Vladimir Marangozov's long-awaited malloc restructuring.Guido van Rossum2000-05-034-15/+18
| | | | | | | | | | For more comments, read the patches@python.org archives. For documentation read the comments in mymalloc.h and objimpl.h. (This is not exactly what Vladimir posted to the patches list; I've made a few changes, and Vladimir sent me a fix in private email for a problem that only occurs in debug mode. I'm also holding back on his change to main.c, which seems unnecessary to me.)
* Ignore a bunch of generated files.Barry Warsaw2000-05-021-0/+3
|
* Only write message about changed Tab size with -v.Guido van Rossum2000-04-031-1/+2
|
* Fix by Eric Raymond: make the code that looks for various bits ofGuido van Rossum2000-03-311-15/+30
| | | | | tab-setting magic much smarter, more correct, and more easily extensible.
* Marc-Andre Lemburg: add new string token types u"..." and ur"..."Guido van Rossum2000-03-101-0/+10
| | | | (Unicode and raw Unicode).
* Make sure that -t and -tt also work on strings passed to compile().Guido van Rossum1998-12-211-0/+7
|
* One more fprintf bites the dist -- use PySys_WriteStderrGuido van Rossum1998-12-041-1/+1
|
* Need to add default decl of DL_IMPORT, for mymalloc.hGuido van Rossum1998-12-041-0/+6
|
* Changes to deal with the sigcheck+intrcheck vs. signalmodule controversy.Guido van Rossum1998-10-071-2/+7
|
* The previous fix was still broken; the Py_END_ALLOW_THREADS macro wasGuido van Rossum1998-08-291-1/+3
| | | | never executed because of a return statement. Sigh.
* We now assume that PyOS_Readline() is called with the interpreter lockGuido van Rossum1998-08-271-11/+3
| | | | | held. It releases the lock around the call to the function pointed to by PyOS_ReadlineFunctionPointer (default PyOS_StdioReadline()).
* Replace all calls to fprintf(stderr, ...) with PySys_WriteStderr(...).Guido van Rossum1998-08-251-5/+6
|
* Add a version of PySys_WriteStderr() that writes to stderr, so we canGuido van Rossum1998-08-251-0/+27
| | | | use it in tokenizer.c.
* There's a bunch of files that shouldn't be included in libpython*.a!Guido van Rossum1998-08-091-4/+5
|
* Make new gcc -Wall happyGuido van Rossum1998-04-102-2/+2
|
* Declare and use Py_TabcheckFlag here.Guido van Rossum1998-04-101-0/+8
|