Commit Graph

241 Commits

Author SHA1 Message Date
Michael Hansen
13397c940e Don't emit statements for null values on the stack.
Fixes several test cases with extraneous None lines.
2019-10-10 10:26:19 -07:00
Michael Hansen
15da179173 Merge print nodes in the AST rather than attempting to manage it during
print statement output. Fixes numerous bugs with mangled print statements.
2019-10-09 14:20:46 -07:00
Michael Hansen
8713b3b05f Merge 'pass' node into existing ASTKeyword node type 2019-10-08 13:12:31 -07:00
Michael Hansen
c928df906b Fix applyEquiv test by writing the correct name from the call object. 2019-10-08 11:44:52 -07:00
Michael Hansen
9309effba9 Support Python 3.x kw-only arguments. 2019-10-08 11:36:12 -07:00
Michael Hansen
3e379c114e Don't emit a 'pass' statement on an empty top-level module code object
Fixes test_empty test case.
2019-10-08 09:04:41 -07:00
Michael Hansen
3009ea38d2 Handle Python 3.3's automatic __qualname__ assignment.
Fixes loadbuild_class.py test.
2019-10-08 08:53:53 -07:00
Michael Hansen
8014ac2b14 Print unicode as default in Python 2.x when CO_FUTURE_UNICODE_LITERALS
is set.

Fixes #141.
2019-10-06 14:34:24 -07:00
Michael Hansen
b5696c8398 Port Python 2.7 list comprehension fixes by @ReDucTor from #78 2019-10-04 16:35:58 -07:00
Michael Hansen
314f4a1a0d Fix several cases of name shadowing, and greatly simplify some
unnecessary stack operations with tuple appending.
2019-10-04 16:16:10 -07:00
Michael Hansen
5c896fa743 Clean up some loops with range-based for. 2019-10-04 15:56:24 -07:00
Michael Hansen
2e93d29233 Don't write parens around for loop value tuples 2019-10-04 14:08:47 -07:00
Michael Hansen
0c0a0231a9 Fix dict literals in Python 3.5+ to make the new test case pass. 2019-10-03 15:48:44 -07:00
Michael Hansen
bf60a5831b Fix several undefined behavior issues identified by @nrathaus.
Fixes #147.
2018-01-28 15:37:44 -08:00
Michael Hansen
a9a362254e Use fputs instead of fprintf when no formatting is required 2018-01-28 15:37:44 -08:00
Michael Hansen
b9dd99d518 Don't create special objects for NULL, just use NULL directly.
Also move null check into PycRef for nullable references.
2017-07-05 16:36:04 -07:00
Michael Hansen
1329626215 Add missing break 2017-07-05 16:10:59 -07:00
Michael Hansen
ed2c21cd66 Handle NOP instruction in decompyle (fixes #96) 2016-10-24 09:44:06 -07:00
Michael Hansen
05a32e7bf5 Add more reference source for Python 2.2 tests, and fix some inconsistent names 2016-09-07 18:21:51 -07:00
Michael Hansen
cffb4c5f5f squish tab 2016-07-10 09:46:39 -07:00
Fabien Siron
f378a777a2 Fix lambda call 2016-07-09 15:20:39 +00:00
Michael Hansen
9f2930ccaa Add async keyword to native coroutines (Python 3.5) 2015-11-13 15:22:47 -08:00
Michael Hansen
badd17bd21 Support @ operator 2015-10-01 17:03:41 -07:00
Eximius
c1a120ac6e Fix SEGFAULT due to defblock being changed. 2015-08-16 14:34:54 +03:00
mancoast
58edafd872 Add support for LOAD_BUILD_CLASS op-code
Issue #39
2015-04-20 17:38:36 -04:00
Michael Hansen
69a757210a Fix compile error on ARM 2015-04-17 19:52:35 -07:00
Michael Hansen
bbed2dc0fd Merge remote-tracking branch 'gurnec/docstrings' 2015-04-17 18:39:34 -07:00
Michael Hansen
486629dda0 Tabs -> spaces 2015-04-17 18:37:37 -07:00
mancoast
eb04199d98 Test for qualified name of function 2015-04-17 09:51:00 -04:00
Christopher Gurnee
b2e5e77c48 Support function docstrings 2015-01-28 14:35:18 -05:00
Christopher Gurnee
7e03be30a4 Fixes for module and class docstrings 2015-01-28 13:35:17 -05:00
Michael Hansen
820397f9bf Interned strings and ASCII literals are always in the native format 2014-01-21 00:47:11 -08:00
Michael Hansen
176a049a68 Support new marshal types from Python 3.4 2014-01-21 00:42:37 -08:00
charlietang98
7d8fad3cc7 Update ASTree.cpp
trim whitespace from blank line
2013-07-23 13:16:49 -04:00
charlietang98
e1667b4300 Update ASTree.cpp
trim white-space from blank lines, and a space after the if
2013-07-22 22:23:45 -04:00
charlietang98
b75411b5bf Update ASTree.cpp
fixed 1. deque iterator not dereferencable, 2. crash at for statement
2013-07-22 16:11:59 -04:00
Darryl Pogue
2af14ddb8c Fixes pointed out by @zrax. 2013-06-29 00:22:59 -07:00
Darryl Pogue
4b335fb248 Fix for the lambda assignment issue.
Refs #27.
2013-06-28 23:22:25 -07:00
Olivier Iffrig
afb2208e6e Fix tuple unpacking in for loops 2013-06-28 16:30:05 +02:00
Michael Hansen
1faffc4a2e Merge pull request #21 from kunalparmar/decorators
Handle decorators correctly.
2012-06-11 18:07:33 -07:00
Michael Hansen
4af1884177 Merge pull request #19 from kunalparmar/with-statement
Support for with statement.
2012-06-11 18:04:47 -07:00
Kunal Parmar
2cc5e52201 Handle import as correctly. 2012-06-10 02:57:28 -07:00
Kunal Parmar
0fd7bccf52 Handle decorators correctly. 2012-06-10 00:42:05 -07:00
Kunal Parmar
0f012b62d3 Pop a with block on a WITH_CLEANUP. 2012-06-09 16:45:37 -07:00
Kunal Parmar
c38193faa8 Fix for try..else..finally blocks.
* with blocks having a nested if..else do not work anymore.
2012-06-06 23:00:03 -07:00
Kunal Parmar
cc9bdfa085 Support for with statement. 2012-06-06 22:02:33 -07:00
Kunal Parmar
6a1eba1622 Add support for STORE_MAP. 2012-06-02 02:38:59 -07:00
Michael Hansen
237a0788aa Make version comparisons human readable 2012-05-26 14:10:12 -07:00
Michael Hansen
2eb61bd017 Print out globals if they're used in a del statement too 2011-10-25 21:40:05 -07:00
Michael Hansen
f030a77767 Allow for output file override 2011-10-23 19:04:06 -07:00