Anonymous | Login | 02-21-2019 00:03 UTC |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ Issue History ] [ Print ] | ||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||||
0007534 | [Squeak] Kernel | major | always | 05-18-10 22:11 | 04-03-11 22:49 | ||||
Reporter | sig | View Status | public | ||||||
Assigned To | |||||||||
Priority | normal | Resolution | fixed | ||||||
Status | closed | Product Version | 4.1 | ||||||
Summary | 0007534: Perform primitive: fails if method having many arguments | ||||||||
Description |
The perform primitive using the currently active context to push all of the arguments on it, and then do normal send. But a sender context may be not be big enough (small frame) to accomodate all pushed values. Therefore, for methods with many arguments, a primitive may fail. The proposed fix is to make sure that Object>>#perform:withArguments: is using a large stack frame size, so when a primitive 84 fails, and Object>>#perform:withArguments: will be activated, there will be enough space to push all arguments on context stack and retry with primitive 100. |
||||||||
Additional Information | |||||||||
Attached Files |
![]() |
||||||||
|
![]() |
|
(0014079 - 34 - 34 - 34 - 34 - 34 - 34) leves 04-03-11 22:49 |
The fix is included in Squeak 4.2. |
Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
46 total queries executed. 34 unique queries executed. |