Hi,
I'm trying to create a toGo exe file of a new ToDo application, but keep getting the error: "Invalid arg 2: Cannot coerce a CompiledMethod to lpstr" I've looked through the .errors but find it difficult to determine what's wrong or even where to start looking. Can anyone help? I've attached the dump for anyone who wants to have a bit of light reading... Thanks, Theo Pronk ******************************************************************************** ************************** Dolphin Crash Dump Report *************************** 09:13:12, 30/05/2003: DOLPHIN.EXE caused an unhandled Win32 Exception 20000002 at 10018B81 in module 10000000 (C:\PROGRAM FILES\COMMON FILES\OBJECT ARTS\DOLPHIN SMALLTALK 5.1\DOLPHINVM005.DLL) *----> Exception Parameters <----* 0775B744 Invalid arg 2: Cannot coerce a CompiledM *----> CPU Context for thread 0xfffd09bf <----* EAX = 00000000 EBX = 0770AAC4 ECX = 00000007 ESI = 07F70564 EDI = FFFFFFFF EIP = 10018B81 ESP = 00D3F9F0 EBP = 00D3F9F8 EFL = 00000246 CS = 0187 SS = 018F DS = 018F ES = 018F FS = 1FC7 GS = 0000 *----> VM Context <----* Process: {07F70004:size 183 words, suspended frame 07F705FD, priority 5, callbacks 0 last failure 17:nil, FPE mask 3, thread nil} Active Method: VMLibrary>>crashDump: IP: 07761B0E (22) SP: 07F70564 BP: 07F70548 (321) ActiveFrame: {07F70550: cf 07F70531, sp 07F70560, bp 07F70548, ip 10, VMLibrary>>crashDump:} receiver: a VMLibrary arg[0]: 'Invalid arg 2: Cannot coerce a CompiledMethod to lpstr' temp[0]: a DWORDArray New Method: KernelLibrary>>raiseException:dwExceptionFlags:nNumberOfArguments:lpArguments: Message Selector: #raiseException:dwExceptionFlags:nNumberOfArguments:lpArguments: *----> Stack <----* [07F70564: 328]-->a KernelLibrary [07F70560: 327]-->66814628 [07F7055C: 326]-->VMLibrary>>crashDump: [07F70558: 325]-->66814640 [07F70554: 324]-->13 [07F70550: 323]-->66814616 [07F7054C: 322]-->a DWORDArray [07F70548: 321]-->'Invalid arg 2: Cannot coerce a CompiledMethod to lpstr' [07F70544: 320]-->a VMLibrary [07F70540: 319]-->66814612 [07F7053C: 318]-->ImageStripper>>onError: [07F70538: 317]-->66814624 [07F70534: 316]-->24 [07F70530: 315]-->66814600 [07F7052C: 314]-->'Invalid arg 2: Cannot coerce a CompiledMethod to lpstr' [07F70528: 313]-->a InvalidExternalCall [07F70524: 312]-->a ImageStripper [07F70520: 311]-->[] @ 250 in ImageStripper>>stripAndSaveNotifying: [07F7051C: 310]-->ImageStripper>>stripAndSaveNotifying: [07F70518: 309]-->66814608 [07F70514: 308]-->269 [07F70510: 307]-->66814590 [07F7050C: 306]-->[] @ 15 in Exception>>_evaluateHandler:in: [07F70508: 305]-->Exception>>_evaluateHandler:in: [07F70504: 304]-->66814598 [07F70500: 303]-->36 [07F704FC: 302]-->66814576 [07F704F8: 301]-->[] @ 6 in BlockClosure>>ifCurtailed: [07F704F4: 300]-->[] @ 15 in Exception>>_evaluateHandler:in: [07F704F0: 299]-->a MethodContext for: BlockClosure>>ifCurtailed: frame: 7f704e1 receiver: [] @ 8028006 in nil [07F704EC: 298]-->BlockClosure>>ifCurtailed: [07F704E8: 297]-->66814588 [07F704E4: 296]-->20 [07F704E0: 295]-->66814566 [07F704DC: 294]-->66814562 [07F704D8: 293]-->BlockClosure>>ensure: [07F704D4: 292]-->66814574 [07F704D0: 291]-->7 [07F704CC: 290]-->66814550 [07F704C8: 289]-->nil [07F704C4: 288]-->[] @ 38 in Exception>>_evaluateHandler:in: [07F704C0: 287]-->[] @ 15 in Exception>>_evaluateHandler:in: [07F704BC: 286]-->a MethodContext for: Exception>>_evaluateHandler:in: frame: 7f704ad receiver: a InvalidExternalCall [07F704B8: 285]-->Exception>>_evaluateHandler:in: [07F704B4: 284]-->66814558 [07F704B0: 283]-->50 [07F704AC: 282]-->66814540 [07F704A8: 281]-->a MethodContext for: Exception>>_propagateFrom: frame: 7f70499 receiver: a InvalidExternalCall [07F704A4: 280]-->Exception>>_propagateFrom: [07F704A0: 279]-->66814548 [07F7049C: 278]-->47 [07F70498: 277]-->66814530 [07F70494: 276]-->66814528 [07F70490: 275]-->Exception>>_propagate [07F7048C: 274]-->66814538 [07F70488: 273]-->9 [07F70484: 272]-->66814516 [07F70480: 271]-->nil [07F7047C: 270]-->a InvalidExternalCall [07F70478: 269]-->66814516 [07F70474: 268]-->Exception>>signal [07F70470: 267]-->66814524 [07F7046C: 266]-->15 [07F70468: 265]-->66814504 [07F70464: 264]-->a InvalidExternalCall [07F70460: 263]-->66814500 [07F7045C: 262]-->Exception>>signal:with: [07F70458: 261]-->66814512 [07F70454: 260]-->14 [07F70450: 259]-->66814488 [07F7044C: 258]-->2 [07F70448: 257]-->nil [07F70444: 256]-->a InvalidExternalCall [07F70440: 255]-->66814486 [07F7043C: 254]-->Exception>>signalWith: [07F70438: 253]-->66814496 [07F70434: 252]-->8 [07F70430: 251]-->66814474 [07F7042C: 250]-->2 [07F70428: 249]-->a InvalidExternalCall [07F70424: 248]-->66814468 [07F70420: 247]-->InvalidExternalCall class>>invalidArgument:got:expected: [07F7041C: 246]-->66814482 [07F70418: 245]-->16 [07F70414: 244]-->66814456 [07F70410: 243]-->'lpstr' [07F7040C: 242]-->ArithmeticValue>>retry:coercing: [07F70408: 241]-->2 [07F70404: 240]-->InvalidExternalCall [07F70400: 239]-->66814442 [07F703FC: 238]-->ExternalLibrary>>invalidCall [07F703F8: 237]-->66814464 [07F703F4: 236]-->61 [07F703F0: 235]-->66814430 [07F703EC: 234]-->a ExternalDescriptor [07F703E8: 233]-->2 [07F703E4: 232]-->2 [07F703E0: 231]-->a StackFrame [07F703DC: 230]-->a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) [07F703D8: 229]-->17 [07F703D4: 228]-->nil [07F703D0: 227]-->a KernelLibrary [07F703CC: 226]-->66814426 [07F703C8: 225]-->KernelLibrary>>lstrcmp:lpString2: [07F703C4: 224]-->66814438 [07F703C0: 223]-->2 [07F703BC: 222]-->66814414 [07F703B8: 221]-->ArithmeticValue>>retry:coercing: [07F703B4: 220]-->'className' [07F703B0: 219]-->a KernelLibrary [07F703AC: 218]-->66814412 [07F703A8: 217]-->String>>trueCompare: [07F703A4: 216]-->66814422 [07F703A0: 215]-->9 [07F7039C: 214]-->66814400 [07F70398: 213]-->ArithmeticValue>>retry:coercing: [07F70394: 212]-->'className' [07F70390: 211]-->[] @ 24 in Symbol class>>findInterned: [07F7038C: 210]-->Symbol class>>findInterned: [07F70388: 209]-->66814408 [07F70384: 208]-->37 [07F70380: 207]-->66814386 [07F7037C: 206]-->22 [07F70378: 205]-->1 [07F70374: 204]-->66814382 [07F70370: 203]-->ArrayedCollection>>do: [07F7036C: 202]-->66814398 [07F70368: 201]-->19 [07F70364: 200]-->66814370 [07F70360: 199]-->6 [07F7035C: 198]-->[] @ 24 in Symbol class>>findInterned: [07F70358: 197]-->a WeakArray [07F70354: 196]-->a MethodContext for: Symbol class>>findInterned: frame: 7f70345 receiver: Symbol [07F70350: 195]-->Symbol class>>findInterned: [07F7034C: 194]-->66814378 [07F70348: 193]-->46 [07F70344: 192]-->66814360 [07F70340: 191]-->66814356 [07F7033C: 190]-->Symbol class>>intern: [07F70338: 189]-->66814368 [07F70334: 188]-->7 [07F70330: 187]-->66814344 [07F7032C: 186]-->nil [07F70328: 185]-->'className' [07F70324: 184]-->Symbol [07F70320: 183]-->66814344 [07F7031C: 182]-->String>>asSymbol [07F70318: 181]-->66814352 [07F70314: 180]-->3 [07F70310: 179]-->66814330 ... <27 slots omitted> ... [07F702A0: 151]-->66814278 [07F7029C: 150]-->66814270 [07F70298: 149]-->ImageStripper>>stripRedundantMethodsNotifying: [07F70294: 148]-->66814286 [07F70290: 147]-->21 [07F7028C: 146]-->66814256 [07F70288: 145]-->nil [07F70284: 144]-->a OrderedCollection [07F70280: 143]-->0 [07F7027C: 142]-->a Array [07F70278: 141]-->a ImageStripper [07F70274: 140]-->125 [07F70270: 139]-->66814252 [07F7026C: 138]-->ImageStripper>>stripRedundantClassesMethodsAndResources:notifying: [07F70268: 137]-->66814266 [07F70264: 136]-->11 [07F70260: 135]-->66814240 [07F7025C: 134]-->a Array [07F70258: 133]-->false [07F70254: 132]-->a ImageStripper [07F70250: 131]-->[] @ 5 in ImageStripper>>stripAndSaveNotifying: [07F7024C: 130]-->ImageStripper>>stripAndSaveNotifying: [07F70248: 129]-->66814248 [07F70244: 128]-->127 [07F70240: 127]-->66814230 [07F7023C: 126]-->a MethodContext for: ExceptionHandlerAbstract>>markAndTry frame: 7f7022d receiver: a ExceptionHandlerSet [07F70238: 125]-->ExceptionHandlerAbstract>>markAndTry [07F70234: 124]-->66814238 [07F70230: 123]-->14 [07F7022C: 122]-->66814220 [07F70228: 121]-->[] @ 15 in ExceptionHandlerAbstract>>try: [07F70224: 120]-->ExceptionHandlerAbstract>>try: [07F70220: 119]-->66814228 [07F7021C: 118]-->24 [07F70218: 117]-->66814206 [07F70214: 116]-->[] @ 6 in BlockClosure>>ifCurtailed: [07F70210: 115]-->[] @ 15 in ExceptionHandlerAbstract>>try: [07F7020C: 114]-->a MethodContext for: BlockClosure>>ifCurtailed: frame: 7f701fd receiver: [] @ 8028006 in nil [07F70208: 113]-->BlockClosure>>ifCurtailed: [07F70204: 112]-->66814218 [07F70200: 111]-->20 [07F701FC: 110]-->66814196 [07F701F8: 109]-->66814192 [07F701F4: 108]-->BlockClosure>>ensure: [07F701F0: 107]-->66814204 [07F701EC: 106]-->7 [07F701E8: 105]-->66814180 [07F701E4: 104]-->nil [07F701E0: 103]-->[] @ 34 in ExceptionHandlerAbstract>>try: [07F701DC: 102]-->[] @ 15 in ExceptionHandlerAbstract>>try: [07F701D8: 101]-->a MethodContext for: ExceptionHandlerAbstract>>try: frame: 7f701c9 receiver: a ExceptionHandlerSet [07F701D4: 100]-->ExceptionHandlerAbstract>>try: [07F701D0: 99]-->66814188 [07F701CC: 98]-->42 [07F701C8: 97]-->66814170 [07F701C4: 96]-->66814168 [07F701C0: 95]-->BlockClosure>>onDo: [07F701BC: 94]-->66814178 [07F701B8: 93]-->3 [07F701B4: 92]-->66814156 [07F701B0: 91]-->a ExceptionHandlerSet [07F701AC: 90]-->[] @ 5 in ImageStripper>>stripAndSaveNotifying: [07F701A8: 89]-->66814148 [07F701A4: 88]-->BlockClosure>>on:do:on:do: [07F701A0: 87]-->66814164 [07F7019C: 86]-->16 [07F70198: 85]-->66814136 [07F70194: 84]-->[] @ 273 in ImageStripper>>stripAndSaveNotifying: [07F70190: 83]-->Notification [07F7018C: 82]-->[] @ 250 in ImageStripper>>stripAndSaveNotifying: [07F70188: 81]-->Error [07F70184: 80]-->[] @ 5 in ImageStripper>>stripAndSaveNotifying: [07F70180: 79]-->a MethodContext for: ImageStripper>>stripAndSaveNotifying: frame: 7f70171 receiver: a ImageStripper [07F7017C: 78]-->ImageStripper>>stripAndSaveNotifying: [07F70178: 77]-->66814144 [07F70174: 76]-->295 [07F70170: 75]-->66814126 [07F7016C: 74]-->66814126 [07F70168: 73]-->ImageStripper>>stripAndSaveWithProgress [07F70164: 72]-->66814134 [07F70160: 71]-->14 [07F7015C: 70]-->66814114 [07F70158: 69]-->a ImageStripper [07F70154: 68]-->66814114 [07F70150: 67]-->MessageSendAbstract>>value [07F7014C: 66]-->66814122 [07F70148: 65]-->9 [07F70144: 64]-->66814102 [07F70140: 63]-->a MessageSend [07F7013C: 62]-->66814096 [07F70138: 61]-->InputState>>loopWhile: [07F70134: 60]-->66814110 [07F70130: 59]-->35 [07F7012C: 58]-->66814084 [07F70128: 57]-->a MessageSend [07F70124: 56]-->a MSG [07F70120: 55]-->[] @ 6 in InputState>>mainLoop [07F7011C: 54]-->a InputState [07F70118: 53]-->a MethodContext for: InputState>>mainLoop frame: 7f70109 receiver: a InputState [07F70114: 52]-->InputState>>mainLoop [07F70110: 51]-->66814092 [07F7010C: 50]-->15 [07F70108: 49]-->66814074 [07F70104: 48]-->[] @ 8 in InputState>>forkMain [07F70100: 47]-->InputState>>forkMain [07F700FC: 46]-->66814082 [07F700F8: 45]-->16 [07F700F4: 44]-->66814064 [07F700F0: 43]-->a MethodContext for: ExceptionHandlerAbstract>>markAndTry frame: 7f700e1 receiver: a ExceptionHandler [07F700EC: 42]-->ExceptionHandlerAbstract>>markAndTry [07F700E8: 41]-->66814072 [07F700E4: 40]-->14 [07F700E0: 39]-->66814054 [07F700DC: 38]-->[] @ 15 in ExceptionHandlerAbstract>>try: [07F700D8: 37]-->ExceptionHandlerAbstract>>try: [07F700D4: 36]-->66814062 [07F700D0: 35]-->24 [07F700CC: 34]-->66814040 [07F700C8: 33]-->[] @ 6 in BlockClosure>>ifCurtailed: [07F700C4: 32]-->[] @ 15 in ExceptionHandlerAbstract>>try: [07F700C0: 31]-->a MethodContext for: BlockClosure>>ifCurtailed: frame: 7f700b1 receiver: [] @ 8028006 in nil [07F700BC: 30]-->BlockClosure>>ifCurtailed: [07F700B8: 29]-->66814052 [07F700B4: 28]-->20 [07F700B0: 27]-->66814030 [07F700AC: 26]-->66814026 [07F700A8: 25]-->BlockClosure>>ensure: [07F700A4: 24]-->66814038 [07F700A0: 23]-->7 [07F7009C: 22]-->66814014 [07F70098: 21]-->nil [07F70094: 20]-->[] @ 34 in ExceptionHandlerAbstract>>try: [07F70090: 19]-->[] @ 15 in ExceptionHandlerAbstract>>try: [07F7008C: 18]-->a MethodContext for: ExceptionHandlerAbstract>>try: frame: 7f7007d receiver: a ExceptionHandler [07F70088: 17]-->ExceptionHandlerAbstract>>try: [07F70084: 16]-->66814022 [07F70080: 15]-->42 [07F7007C: 14]-->66814004 [07F70078: 13]-->66814000 [07F70074: 12]-->BlockClosure>>on:do: [07F70070: 11]-->66814012 [07F7006C: 10]-->10 [07F70068: 9]-->66813988 [07F70064: 8]-->[] @ 12 in BlockClosure>>newProcess [07F70060: 7]-->ProcessTermination [07F7005C: 6]-->[] @ 8 in InputState>>forkMain [07F70058: 5]-->[] @ 6 in BlockClosure>>newProcess [07F70054: 4]-->BlockClosure>>newProcess [07F70050: 3]-->66813996 [07F7004C: 2]-->20 [07F70048: 1]-->0 <Bottom of stack> *----> Stack Back Trace <----* {07F70550: cf 07F70531, sp 07F70560, bp 07F70548, ip 10, VMLibrary>>crashDump:} receiver: a VMLibrary arg[0]: 'Invalid arg 2: Cannot coerce a CompiledMethod to lpstr' temp[0]: a DWORDArray {07F70530: cf 07F70511, sp 07F70540, bp 07F70528, ip 21, ImageStripper>>onError:} receiver: a ImageStripper arg[0]: a InvalidExternalCall temp[0]: 'Invalid arg 2: Cannot coerce a CompiledMethod to lpstr' {07F70510: cf 07F704FD, sp 07F70520, bp 095700F0, ip 266, [] in ImageStripper>>stripAndSaveNotifying:} receiver: a ImageStripper arg[0]: a Array temp[0]: 'C:\My Documents\Dolphin Smalltalk 5.1\TPRO Consulting Pty Ltd\Projects\toDo.exe' temp[1]: a WeakIdentitySet temp[2]: 'C:\My Documents\Dolphin Smalltalk 5.1\TPRO Consulting Pty Ltd\Projects\toDo.exe' temp[3]: a InvalidExternalCall temp[4]: a Notification {07F704FC: cf 07F704E1, sp 07F7050C, bp 07F3F1D0, ip 33, [] in InvalidExternalCall(Exception)>>_evaluateHandler:in:} receiver: a InvalidExternalCall arg[0]: [] @ 250 in ImageStripper>>stripAndSaveNotifying: arg[1]: a ExceptionHandlerSet temp[0]: nil temp[1]: a ExceptionHandlerSet temp[2]: nil temp[3]: nil temp[4]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) temp[5]: nil {07F704E0: cf 07F704CD, sp 07F704F8, bp 07ADACF8, ip 17, BlockClosure>>ifCurtailed:} receiver: [] @ 134381574 in nil arg[0]: [] @ 38 in Exception>>_evaluateHandler:in: temp[0]: nil temp[1]: nil temp[2]: nil {07F704CC: cf 07F704AD, sp 07F704DC, bp 07F704C4, ip 4, BlockClosure>>ensure:} receiver: [] @ 15 in Exception>>_evaluateHandler:in: arg[0]: [] @ 38 in Exception>>_evaluateHandler:in: temp[0]: nil {07F704AC: cf 07F70499, sp 07F704BC, bp 07F3F1D0, ip 47, InvalidExternalCall(Exception)>>_evaluateHandler:in:} receiver: a InvalidExternalCall arg[0]: [] @ 250 in ImageStripper>>stripAndSaveNotifying: arg[1]: a ExceptionHandlerSet temp[0]: nil temp[1]: a ExceptionHandlerSet temp[2]: nil temp[3]: nil temp[4]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) temp[5]: nil {07F70498: cf 07F70485, sp 07F704A8, bp 07F3F240, ip 44, InvalidExternalCall(Exception)>>_propagateFrom:} receiver: a InvalidExternalCall arg[0]: a ExceptionHandlerSet temp[0]: a ExceptionHandlerSet temp[1]: a ExceptionHandlerSet temp[2]: nil temp[3]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) temp[4]: [] @ 250 in ImageStripper>>stripAndSaveNotifying: {07F70484: cf 07F70469, sp 07F70494, bp 07F70480, ip 6, InvalidExternalCall(Exception)>>_propagate} receiver: a InvalidExternalCall temp[0]: nil {07F70468: cf 07F70451, sp 07F70478, bp 07F70468, ip 12, InvalidExternalCall(Exception)>>signal} receiver: a InvalidExternalCall {07F70450: cf 07F70431, sp 07F70460, bp 07F70448, ip 11, InvalidExternalCall(Exception)>>signal:with:} receiver: a InvalidExternalCall arg[0]: nil arg[1]: 2 {07F70430: cf 07F70415, sp 07F70440, bp 07F7042C, ip 5, InvalidExternalCall(Exception)>>signalWith:} receiver: a InvalidExternalCall arg[0]: 2 {07F70414: cf 07F703F1, sp 07F70424, bp 07F70408, ip 13, InvalidExternalCall class>>invalidArgument:got:expected:} receiver: InvalidExternalCall arg[0]: 2 arg[1]: ArithmeticValue>>retry:coercing: arg[2]: 'lpstr' {07F703F0: cf 07F703BD, sp 07F70400, bp 07F703D4, ip 58, KernelLibrary(ExternalLibrary)>>invalidCall} receiver: a KernelLibrary temp[0]: nil temp[1]: 17 temp[2]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) temp[3]: a StackFrame temp[4]: 2 temp[5]: 2 temp[6]: a ExternalDescriptor {07F703BC: cf 07F7039D, sp 07F703CC, bp 07F703B4, ip 3, KernelLibrary>>lstrcmp:lpString2:} receiver: a KernelLibrary arg[0]: 'className' arg[1]: ArithmeticValue>>retry:coercing: {07F7039C: cf 07F70381, sp 07F703AC, bp 07F70398, ip 6, String>>trueCompare:} receiver: 'className' arg[0]: ArithmeticValue>>retry:coercing: {07F70380: cf 07F70365, sp 07F70390, bp 07ADA320, ip 34, [] in Symbol class>>findInterned:} receiver: Symbol arg[0]: 'className' temp[0]: a WeakArray temp[1]: a DeadObject temp[2]: ArithmeticValue>>retry:coercing: {07F70364: cf 07F70345, sp 07F7037C, bp 07F7035C, ip 16, WeakArray(ArrayedCollection)>>do:} receiver: a WeakArray arg[0]: [] @ 24 in Symbol class>>findInterned: temp[0]: 6 {07F70344: cf 07F70331, sp 07F70354, bp 07ADA320, ip 43, Symbol class>>findInterned:} receiver: Symbol arg[0]: 'className' temp[0]: a WeakArray temp[1]: a DeadObject temp[2]: ArithmeticValue>>retry:coercing: {07F70330: cf 07F70311, sp 07F70340, bp 07F70328, ip 4, Symbol class>>intern:} receiver: Symbol arg[0]: 'className' temp[0]: nil {07F70310: cf 07F702F5, sp 07F70320, bp 07F70310, ip 4, String>>asSymbol} receiver: 'className' {07F702F4: cf 07F702D9, sp 07F70308, bp 0803B7F0, ip 115, [] in ImageStripper>>messagesSentBy:} receiver: a ImageStripper arg[0]: a OrderedCollection temp[0]: a IdentitySet temp[1]: RichTextEdit class>>onStartup temp[2]: #onStartup temp[3]: #registerClass temp[4]: a EventsCollection temp[5]: a EventMessageSequence temp[6]: a EventMessageSend temp[7]: #className: temp[8]: nil {07F702D8: cf 07F702B5, sp 07F702F0, bp 07F702CC, ip 27, IdentitySet(Set)>>do:} receiver: a IdentitySet arg[0]: [] @ 90 in ImageStripper>>messagesSentBy: temp[0]: #className: temp[1]: 4964 {07F702B4: cf 07F702A1, sp 07F702C4, bp 0803B7F0, ip 129, ImageStripper>>messagesSentBy:} receiver: a ImageStripper arg[0]: a OrderedCollection temp[0]: a IdentitySet temp[1]: RichTextEdit class>>onStartup temp[2]: #onStartup temp[3]: #registerClass temp[4]: a EventsCollection temp[5]: a EventMessageSequence temp[6]: a EventMessageSend temp[7]: #className: temp[8]: nil {07F702A0: cf 07F7028D, sp 07F702B0, bp 0802E9E8, ip 17, ImageStripper>>stripRedundantMethodsOnceFrom:notifying:} receiver: a ImageStripper arg[0]: a OrderedCollection arg[1]: a Array temp[0]: nil temp[1]: nil temp[2]: a IdentitySet temp[3]: nil temp[4]: nil temp[5]: nil {07F7028C: cf 07F70261, sp 07F7029C, bp 07F7027C, ip 18, ImageStripper>>stripRedundantMethodsNotifying:} receiver: a ImageStripper arg[0]: a Array temp[0]: 0 temp[1]: a OrderedCollection temp[2]: nil {07F70260: cf 07F70241, sp 07F70274, bp 07F70258, ip 8, ImageStripper>>stripRedundantClassesMethodsAndResources:notifying:} receiver: a ImageStripper arg[0]: false arg[1]: a Array {07F70240: cf 07F7022D, sp 07F70250, bp 095700F0, ip 124, [] in ImageStripper>>stripAndSaveNotifying:} receiver: a ImageStripper arg[0]: a Array temp[0]: 'C:\My Documents\Dolphin Smalltalk 5.1\TPRO Consulting Pty Ltd\Projects\toDo.exe' temp[1]: a WeakIdentitySet temp[2]: 'C:\My Documents\Dolphin Smalltalk 5.1\TPRO Consulting Pty Ltd\Projects\toDo.exe' temp[3]: a InvalidExternalCall temp[4]: a Notification {07F7022C: cf 07F70219, sp 07F7023C, bp 0803B518, ip 11, ExceptionHandlerSet(ExceptionHandlerAbstract)>>markAndTry} receiver: a ExceptionHandlerSet temp[0]: nil {07F70218: cf 07F701FD, sp 07F70228, bp 07FA8438, ip 21, [] in ExceptionHandlerSet(ExceptionHandlerAbstract)>>try:} receiver: a ExceptionHandlerSet arg[0]: [] @ 5 in ImageStripper>>stripAndSaveNotifying: temp[0]: a ExceptionHandler temp[1]: nil temp[2]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) {07F701FC: cf 07F701E9, sp 07F70214, bp 0803B4A8, ip 17, BlockClosure>>ifCurtailed:} receiver: [] @ 134381574 in nil arg[0]: [] @ 34 in ExceptionHandlerAbstract>>try: temp[0]: nil temp[1]: nil temp[2]: nil {07F701E8: cf 07F701C9, sp 07F701F8, bp 07F701E0, ip 4, BlockClosure>>ensure:} receiver: [] @ 15 in ExceptionHandlerAbstract>>try: arg[0]: [] @ 34 in ExceptionHandlerAbstract>>try: temp[0]: nil {07F701C8: cf 07F701B5, sp 07F701D8, bp 07FA8438, ip 39, ExceptionHandlerSet(ExceptionHandlerAbstract)>>try:} receiver: a ExceptionHandlerSet arg[0]: [] @ 5 in ImageStripper>>stripAndSaveNotifying: temp[0]: a ExceptionHandler temp[1]: nil temp[2]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) {07F701B4: cf 07F70199, sp 07F701C4, bp 07F701B0, ip 4, BlockClosure>>onDo:} receiver: [] @ 5 in ImageStripper>>stripAndSaveNotifying: arg[0]: a ExceptionHandlerSet {07F70198: cf 07F70171, sp 07F701A8, bp 07F70188, ip 13, BlockClosure>>on:do:on:do:} receiver: [] @ 5 in ImageStripper>>stripAndSaveNotifying: arg[0]: Error arg[1]: [] @ 250 in ImageStripper>>stripAndSaveNotifying: arg[2]: Notification arg[3]: [] @ 273 in ImageStripper>>stripAndSaveNotifying: {07F70170: cf 07F7015D, sp 07F70180, bp 095700F0, ip 292, ImageStripper>>stripAndSaveNotifying:} receiver: a ImageStripper arg[0]: a Array temp[0]: 'C:\My Documents\Dolphin Smalltalk 5.1\TPRO Consulting Pty Ltd\Projects\toDo.exe' temp[1]: a WeakIdentitySet temp[2]: 'C:\My Documents\Dolphin Smalltalk 5.1\TPRO Consulting Pty Ltd\Projects\toDo.exe' temp[3]: a InvalidExternalCall temp[4]: a Notification {07F7015C: cf 07F70145, sp 07F7016C, bp 07F7015C, ip 11, ImageStripper>>stripAndSaveWithProgress} receiver: a ImageStripper {07F70144: cf 07F7012D, sp 07F70154, bp 07F70144, ip 6, MessageSend(MessageSendAbstract)>>value} receiver: a MessageSend {07F7012C: cf 07F70109, sp 07F7013C, bp 07F70120, ip 32, InputState>>loopWhile:} receiver: a InputState arg[0]: [] @ 6 in InputState>>mainLoop temp[0]: a MSG temp[1]: a MessageSend {07F70108: cf 07F700F5, sp 07F70118, bp 0803B898, ip 12, InputState>>mainLoop} receiver: a InputState {07F700F4: cf 07F700E1, sp 07F70104, bp 0802E588, ip 13, [] in InputState>>forkMain} receiver: a InputState {07F700E0: cf 07F700CD, sp 07F700F0, bp 0802E7B8, ip 11, ExceptionHandler(ExceptionHandlerAbstract)>>markAndTry} receiver: a ExceptionHandler temp[0]: nil {07F700CC: cf 07F700B1, sp 07F700DC, bp 0802E9B0, ip 21, [] in ExceptionHandler(ExceptionHandlerAbstract)>>try:} receiver: a ExceptionHandler arg[0]: [] @ 8 in InputState>>forkMain temp[0]: nil temp[1]: nil temp[2]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) {07F700B0: cf 07F7009D, sp 07F700C8, bp 0802EA20, ip 17, BlockClosure>>ifCurtailed:} receiver: [] @ 134381574 in nil arg[0]: [] @ 34 in ExceptionHandlerAbstract>>try: temp[0]: nil temp[1]: nil temp[2]: nil {07F7009C: cf 07F7007D, sp 07F700AC, bp 07F70094, ip 4, BlockClosure>>ensure:} receiver: [] @ 15 in ExceptionHandlerAbstract>>try: arg[0]: [] @ 34 in ExceptionHandlerAbstract>>try: temp[0]: nil {07F7007C: cf 07F70069, sp 07F7008C, bp 0802E9B0, ip 39, ExceptionHandler(ExceptionHandlerAbstract)>>try:} receiver: a ExceptionHandler arg[0]: [] @ 8 in InputState>>forkMain temp[0]: nil temp[1]: nil temp[2]: a Process('Main' base 07F70000 [ACTIVE] in VMLibrary>>crashDump: sp=00000000 ip=13 list=nil) {07F70068: cf 07F70049, sp 07F70078, bp 07F70060, ip 7, BlockClosure>>on:do:} receiver: [] @ 8 in InputState>>forkMain arg[0]: ProcessTermination arg[1]: [] @ 12 in BlockClosure>>newProcess {07F70048: cf 00000001, sp 07F70058, bp 0802E978, ip 17, [] in BlockClosure>>newProcess} receiver: [] @ 8 in InputState>>forkMain temp[0]: nil <Bottom of stack> ***** End of crash report ***** |
Theo wrote:
> I'm trying to create a toGo exe file of a new ToDo application, but keep > getting the error: > > "Invalid arg 2: Cannot coerce a CompiledMethod to lpstr" > > I've looked through the .errors but find it difficult to determine > what's wrong or even where to start looking. > > Can anyone help? > > I've attached the dump for anyone who wants to have a bit of light > reading... Thanks :-) I needed a break just now. Looks like the symbol table of the image you're trying to strip has been corrupted. > {07F70380: cf 07F70365, sp 07F70390, bp 07ADA320, ip 34, [] in Symbol class>>findInterned:} > receiver: Symbol > arg[0]: 'className' > temp[0]: a WeakArray > temp[1]: a DeadObject > temp[2]: ArithmeticValue>>retry:coercing: It's looking through the buckets in the Symbol table and finding a CompiledMethod (ArithmeticValue>>retry:coercing:) where it should be finding just Symbols and the occasional DeadObject. How it got that way is anybody's guess at this point. I'd recommend starting with a fresh image and reloading your application's packages to make a new working image that doesn't have the corruption. hope that helps, -Bill ------------------------------------------- Bill Dargel [hidden email] Shoshana Technologies 100 West Joy Road, Ann Arbor, MI 48105 USA |
In reply to this post by Theo Pronk
"Theo" <[hidden email]> wrote in message
news:[hidden email]... > I'm trying to create a toGo exe file of a new ToDo application, but keep > getting the error: > "Invalid arg 2: Cannot coerce a CompiledMethod to lpstr" > I've looked through the .errors but find it difficult to determine > what's wrong or even where to start looking. ... It seems that an actual instance of a CompiledMethod has been interned in the Symbol table. I wonder how that could have happened. I think this is your problem, or at least one of them. If you inspect the result of this code you can see the problem, it should return any items that are not Strings or DeadObjects: ========== ((Symbol classPool at: #Table) collect: [:eachBucket | eachBucket select: [:eachString | (eachString isKindOf: String) not and: [(eachString isKindOf: DeadObject) not]]]) reject: [:eachBucket | eachBucket isEmpty] ========== You could probably write some code to fix the Symbol table by removing the offending items. Just be VERY careful, and make plenty of image backups. Good luck, Chris |
In reply to this post by Theo Pronk
Thanks Bill and Chris,
As you suggested reloading a fresh image did the trick. I always create a copy of the main files after an upgrade or even for each patch and load my packages on top. The possible cause is various system lockups I'm still using WinMe but that is about to change. Regards, Theo Pronk ================= Theo wrote: > I'm trying to create a toGo exe file of a new ToDo application, but keep > getting the error: > > "Invalid arg 2: Cannot coerce a CompiledMethod to lpstr" > > I've looked through the .errors but find it difficult to determine > what's wrong or even where to start looking. > > Can anyone help? > > I've attached the dump for anyone who wants to have a bit of light > reading... Thanks [:-)] I needed a break just now. Looks like the symbol table of the image you're trying to strip has been corrupted. > {07F70380: cf 07F70365, sp 07F70390, bp 07ADA320, ip 34, [] in Symbol class>>findInterned:} > receiver: Symbol > arg[0]: 'className' > temp[0]: a WeakArray > temp[1]: a DeadObject > temp[2]: ArithmeticValue>>retry:coercing: It's looking through the buckets in the Symbol table and finding a CompiledMethod (ArithmeticValue>>retry:coercing:) where it should be finding just Symbols and the occasional DeadObject. How it got that way is anybody's guess at this point. I'd recommend starting with a fresh image and reloading your application's packages to make a new working image that doesn't have the corruption. hope that helps, -Bill ------------------------------------------- Bill Dargel [hidden email] Shoshana Technologies 100 West Joy Road, Ann Arbor, MI 48105 USA "Theo" <[hidden email]> wrote in message news:[hidden email]... > I'm trying to create a toGo exe file of a new ToDo application, but keep > getting the error: > "Invalid arg 2: Cannot coerce a CompiledMethod to lpstr" > I've looked through the .errors but find it difficult to determine > what's wrong or even where to start looking. ... It seems that an actual instance of a CompiledMethod has been interned in the Symbol table. I wonder how that could have happened. I think this is your problem, or at least one of them. If you inspect the result of this code you can see the problem, it should return any items that are not Strings or DeadObjects: ========== ((Symbol classPool at: #Table) collect: [:eachBucket | eachBucket select: [:eachString | (eachString isKindOf: String) not and: [(eachString isKindOf: DeadObject) not]]]) reject: [:eachBucket | eachBucket isEmpty] ========== You could probably write some code to fix the Symbol table by removing the offending items. Just be VERY careful, and make plenty of image backups. Good luck, Chris |
Free forum by Nabble | Edit this page |