Board index » delphi » Recusive Call causes crash
dia...@intnet.net
![]() Delphi Developer |
Thu, 29 Oct 1998 03:00:00 GMT
|
dia...@intnet.net
![]() Delphi Developer |
Thu, 29 Oct 1998 03:00:00 GMT
Recusive Call causes crashI have written a routine for a ButtonClick event. If the general I also tried moving the routine into its own procedure that calls Any ideas? Anthony |
Richard MacDona
![]() Delphi Developer |
Fri, 30 Oct 1998 03:00:00 GMT
Re:Recusive Call causes crashQuoteOn Sun, 12 May 1996 03:38:22 GMT, dia...@intnet.net wrote: filling up. Unfortunately with Delphi there is no easy way to tell how much stack space is used up for each call. I believe that you can increase the stack size and see if your program will run through more iterations before bombing. Note that all parameters passed to the called program must be saved on the stack Good luck, |
Sundial Servic
![]() Delphi Developer |
Fri, 30 Oct 1998 03:00:00 GMT
Re:Recusive Call causes crashQuoteIn article <4n3cbb$...@mercury.IntNet.net> dia...@intnet.net writes: When you call a routine recursively, the status of the existing function It sounds to me like you have an iterative, rather than a recursive task. itemToProcess := 0; This is a non-recursive solution: ProcessItem does not call itself. /mr/ |
Lurk
![]() Delphi Developer |
Sat, 31 Oct 1998 03:00:00 GMT
Re:Recusive Call causes crashQuotedia...@intnet.net wrote: if they contain parameters or local variables, or perform string operations (the compiler allocates string temporaries on the stack) I assume you're talking about a Delphi 1.0 application. You have only Check your recursive routine carefully for string variables, string -Danny |
Bill Touchsto
![]() Delphi Developer |
Sun, 01 Nov 1998 03:00:00 GMT
Re:Recusive Call causes crashQuote> Re: Recusive Call causes crash 16 bit computers. (r1)++ would automatically increment the contents of the register while letting Brian Kernighan liked the idea and used it in his C language. C contains counter += 5; would add 5 to the counter instead of counter = counter + 5; Bill Touchstone |
Bengt Richt
![]() Delphi Developer |
Wed, 04 Nov 1998 03:00:00 GMT
Re:Recusive Call causes crashQuoteycc...@gate.net (Bill Touchstone) wrote: (xx)++ and --(xx) but not (xx)-- and ++(xx). Yup. Looked it up on an old programing card. Some of these could be used with the PC and Regards, |
Jerry F. Dav
![]() Delphi Developer |
Fri, 06 Nov 1998 03:00:00 GMT
Re:Recusive Call causes crashIn article <4njn8c$...@news.accessone.com>, b...@accessone.com says... Bengt, Boy does that bring back memories. I worked for DEC in Dallas for 12 years Talk about nostalgia! The PDP-11 Assembler was a great language. Jerry |
Holger Friedri
![]() Delphi Developer |
Mon, 09 Nov 1998 03:00:00 GMT
Re:Recusive Call causes crashQuoteIn article <4ndqrp$...@pdn.eng.paradyne.com>, Bill Touchstone (ycc...@gate.net) writes: Cobol compilers support simple macros so I can define ++ to mean ADD 1 TO, after which I can say ++i (yes, in Cobol, that's right)! On the downside, Pascal recently added properties, so when I want to -- |
Tim Sh
![]() Delphi Developer |
Mon, 16 Nov 1998 03:00:00 GMT
Re:Recusive Call causes crashQuoteh...@glare.in-chemnitz.de (Holger Friedrich) wrote: memory variable long enough to operate on it as a memory variable, and then assign the variable's value to the property after the expression has been evaluated? This would especially be helpful when trying to pass properties as variable parameters. Borland should at least be able to do this for integer properties. ------------------------------ |
Gregory H. Anders
![]() Delphi Developer |
Mon, 16 Nov 1998 03:00:00 GMT
Re:Recusive Call causes crashTim Shea writes Quote> Can't the compiler copy the property into a write methods. It's really. PropOwner.SetI(PropOwner.ReadI + 1); I guess the compiler could be wired to do that, but it's not just as -- |
Tim Sh
![]() Delphi Developer |
Tue, 17 Nov 1998 03:00:00 GMT
Re:Recusive Call causes crashGreg_Ander...@afs.com (Gregory H. Anderson) wrote: Quote>Tim Shea writes Quote> PropOwner.SetI(PropOwner.ReadI + 1); going to stash the return value of PropOwner.Read into a register, add one to it, and then pass the new value to PropOwner.Set. There is no reason the compiler couldn't "forget" that it is dealing with a property during the middle step (which could be a much more complicated assignment of course, and during which the "property" might be passed as a variable parameter to a function), and therefore allow all the usual contructs like Inc, Dec, Succ, etc. with the exception of @. The compiler code that generates a "not a real variable reference" The only good reason they didn't do this that I can think of is... if ------------------------------ |
2. Drawing WMF in a TImage causes crash
3. Romoving components causes app to crash
5. (OT?) Memo causes crash: Page faults
6. Indy WriteStream or SendStream causes a application crash
7. text/image datatypes causes program to crash??
8. Empty Memo causes crash w/ InterBase, Delphi 4