]> git.saurik.com Git - cycript.git/blame_incremental - todo.txt
Support building non-fat injection trampolines.
[cycript.git] / todo.txt
... / ...
CommitLineData
1lol
2unicode identifier support (native and \u)
3support unions (right now 0-1 fields parsed as struct)
4look into what String is, and whether to bridge it
5think about bridging NSNumber with Number prototype
6some JS callbacks don't use exception pointers at all...
7a newline needs to not be allowed after a unary *
8finish implementing default xml namespace statement
9encode newlines in history for later replay (psql uses ^A)
10
11consider replacing regex literals with constructors
12 https://bugzilla.mozilla.org/show_bug.cgi?id=98409
13numerification needs to use specific precision values
14 https://bugzilla.mozilla.org/show_bug.cgi?id=5856
15consider a mode where unicode string content is saved
16 https://bugzilla.mozilla.org/show_bug.cgi?id=274152
17
18NSDictionaries that have NSNumber keys don't getProperty
19errors in another process aren't displayed; to fix this, parse errors should get converted to exceptions and thrown
20CYPoolTry/Catch now carefully save the exception after it /no longer needs the exception/... uhh... wtf?
21throw CYJSError should probably be replaced with CYThrow() across the board
22figure out what to do about global context refs: I really really want to retain the bastards
23the concept of NULL pooling is entirely incorrect and sad... bad... evil... need to work on this... really
24NSArray's .toString() and .toLocaleString() fail hard, as Array.prototype.to*String are Array-specific
25applyOnMainThread, when done at console, loops the cyonifier
26special work needs to be done to correctly handle the "arguments" symbol: Declare("arguments", ...Special)
27at the Program level I seem to be eating away all of the var statements
28function pointers are ?; note that blocks are currently block_P = '?'
29I should probably attempt to use the auto_ flag somehow to not do contexts_ push when compiling
30Object_callAsFunction_toCYON should be implemented
31
32[NSString stringWithString:""] crashes, on linux, not on mac
33GS #defines should be _finline
34
35replace procmod g+s with gdb's macosx_get_task_for_pid_rights
36non-local return prologue is not being Replace()d: multipass compiler!
37interpretation of documentation comments should be compiler-only and off by default
38don't ever generate $ CYWith, in particular for CYLet... use CYFunctionExpression
39
40semi-colin insertion warings should mark after the previous token, not on the current one: makes a /lot/ more sense
41new for pools should take a reference, not a pointer
42
43output errors during Trampoline to some kind of log file
44
45cy# ["" <TAB> -> {message:"'undefined' is not an object (evaluating '\"\".$cyi.isa')",line:1,sourceId:30583072,name:"TypeError"}
46 now: cy# ["" <TAB> -> *** _assert(false):Console.cpp(214):ParseExpression [errno=12]
47there is a reinterpret_cast<> that I replaced with an old-style cast on the output of dladdr
48
49why do I never deallocate ffi closures?
50
51cy# (function() { for each (var index in [1, 3]) system.print(index); })()
52(function(){with({$cys:[1,3],$cyt:undefined})for($cyt in $cys){index=$cys[$cyt];system.print(index)}})()
531
543
55cy# (function() { var index; for each (var index in [1, 3]) system.print(index); })()
56(function(){var e;;with({$cys:[1,3],$cyt:undefined})for($cyt in $cys){e=$cys[$cyt];system.print(e)}})()
57
58make a reference holder for namearrays
59rename names to accumulator when it is a name accumulator, and retake names for subset
60I believe calls to mutableCopy will leak memory
61consider pointerTo instead of toPointer
62store the last exception in a variable
63should WebUndefined be @undefined?
64
65if something is a function, it should be output differently
66evaluate usages of CYTry in ObjectiveC/Library for CYObjectiveTry
67verify name targets of "incorrect number of arguments to"