Guido van Rossum
554fa49500
get build info from elsewhere
1997-01-20 18:34:55 +00:00
Guido van Rossum
768360243a
Changes for frame object speedup:
...
- get fastlocals differently
- call newframeobject() with fewer arguments
- toss getowner(), which was unused anyway
1997-01-20 04:26:20 +00:00
Guido van Rossum
7eb883a18e
Remove unused variable.
1997-01-18 20:04:05 +00:00
Guido van Rossum
8d75161671
Intern the string "__complex__".
1997-01-18 08:04:16 +00:00
Guido van Rossum
7b89b6a660
Intern all names and varnames in newcodeobject(), plus those string
...
literals that look like identifiers. Also intern all strings used as
names during the compilation.
1997-01-18 08:02:57 +00:00
Guido van Rossum
3dfd53b4c8
Add "if (x != NULL) continue;" (or similar for err==0) before the
...
break to most cases, as suggested by Tim Peters. This gives another
8-10% speedup.
1997-01-18 02:46:13 +00:00
Guido van Rossum
98a9b312e8
Marshal the new stacksize item in code objects.
1997-01-17 21:07:08 +00:00
Guido van Rossum
7af8130857
Working semaphore implementation by Sjoerd.
1997-01-17 21:06:41 +00:00
Guido van Rossum
dd5db43905
New MAGIC number (code objects have one more item when marshalled).
1997-01-17 21:06:11 +00:00
Guido van Rossum
62f7d15d0b
Use the stack size from the code object and the CO_MAXBLOCKS constant
...
from compile.h. Remove all eval stack overflow checks.
1997-01-17 21:05:28 +00:00
Guido van Rossum
8b993a98db
Add co_stacksize field to codeobject structure, and stacksize argument
...
to PyCode_New() argument list. Move MAXBLOCKS constant to conpile.h.
Added accurate calculation of the actual stack size needed by the
generated code.
Also commented out all fprintf statements (except for a new one to
diagnose stack underflow, and one in #ifdef'ed out code), and added
some new TO DO suggestions (now that the stacksize is taken of the TO
DO list).
1997-01-17 21:04:03 +00:00
Guido van Rossum
635abd24f0
Check for duplicate keyword arguments at compile time.
1997-01-06 22:56:52 +00:00
Guido van Rossum
8f49e12a0e
Make builtin_module_names a tuple instead of a list.
1997-01-06 22:55:54 +00:00
Guido van Rossum
408027ea46
Rename DEBUG macro to Py_DEBUG
1996-12-30 16:17:54 +00:00
Guido van Rossum
0aa9ee65ab
Moved the raise logic out of the main interpreter loop to a separate function.
...
The raise logic has one additional feature: if you raise <class>,
<value> where <value> is not an instance, it will construct an
instance using <value> as argument. If <value> is None, <class> is
instantiated without arguments. If <value> is a tuple, it is used as
the argument list.
This feature is intended to make it easier to upgrade code from using
string exceptions to using class exceptions; without this feature,
you'd have to change every raise statement from ``raise X'' to ``raise
X()'' and from ``raise X, y'' to ``raise X(y)''. The latter is still
the recommended form (because it has no ambiguities about the number
of arguments), but this change makes the transition less painful.
1996-12-10 18:07:35 +00:00
Guido van Rossum
c1547d930f
Better way to handle 64-bit ints, keeping gcc -Wall happy.
...
Tested with AMK's help.
1996-12-10 15:39:04 +00:00
Guido van Rossum
1a2c5cbcc4
Add unistd.h to make gcc -Wall happy.
1996-12-10 15:37:36 +00:00
Guido van Rossum
067998f35e
Add const to error and newstring functions
1996-12-10 15:33:34 +00:00
Guido van Rossum
80bb9655f0
Keep gcc -Wall happy.
1996-12-05 23:27:02 +00:00
Guido van Rossum
ed0af8fe70
Support __complex__ method on instances, for complex() conversion.
...
Keep gcc -Wall happy.
1996-12-05 23:18:18 +00:00
Guido van Rossum
150b2df682
Change the Don Beaudry hack into the Don B + Jim F hack; now, if *any*
...
base class is special it gets invoked.
Make gcc -Wall happy.
1996-12-05 23:17:11 +00:00
Guido van Rossum
3afb5959aa
Some extra flags that an HPUX user wants me to add.
1996-12-05 23:15:35 +00:00
Guido van Rossum
b0c168cbe8
Tentative changes to make this work better on 64-bit machines.
...
A plain int that doesn't fit in 32 bits will be marshalled using a new
type. 32 bits machines can't handle this and will issue a warning.
1996-12-05 23:15:02 +00:00
Guido van Rossum
d266eb460e
New permission notice, includes CNRI.
1996-10-25 14:44:06 +00:00
Guido van Rossum
b75fba04c7
Forget about Ellipses b/w compatibility.
1996-10-16 04:18:36 +00:00