depyo 1.2.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -95,6 +95,14 @@ function processListAppend() {
95
95
  let node = new AST.ASTComprehension (value);
96
96
  node.line = this.code.Current.LineNo;
97
97
  this.dataStack.push(node);
98
+ } else if (list instanceof AST.ASTList) {
99
+ // CPython's "big list" path: when a list literal exceeds the
100
+ // STACK_USE_GUIDELINE and not every element is a compile-time
101
+ // constant, the compiler emits BUILD_LIST 0 + N×LIST_APPEND
102
+ // instead of a single BUILD_LIST N. Mutate the list literal in
103
+ // place; the list reference must remain on top of the data stack
104
+ // for the next LIST_APPEND (or the final STORE_*) to find it.
105
+ list.values.push(value);
98
106
  } else {
99
107
  let node = new AST.ASTSubscr (list, value);
100
108
  node.line = this.code.Current.LineNo;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "depyo",
3
- "version": "1.2.1",
3
+ "version": "1.2.2",
4
4
  "description": "Python bytecode decompiler (Python 1.0–3.15) implemented in Node.js",
5
5
  "bin": {
6
6
  "depyo": "./depyo.js"