From: rpolzer AT web DOT de (Rudolf Polzer) Newsgroups: comp.os.msdos.djgpp Subject: Re: Windows ME and DJGPP References: <20010120205730 DOT 25849 DOT 00000491 AT ng-fd1 DOT aol DOT com> <3a6b7917 DOT 10793503 AT news DOT sci DOT fi> <3A6CB71F DOT 8B4E86C9 AT phekda DOT freeserve DOT co DOT uk> <94k3dc$lf9$1 AT nets3 DOT rz DOT RWTH-Aachen DOT DE> <slrn96u191 DOT 2cl DOT rpolzer AT rebounce DOT rpolzer-lx> <94pm3k$1qf$1 AT nets3 DOT rz DOT RWTH-Aachen DOT DE> X-newsgroup: comp.os.msdos.djgpp X-realname: Hans-Bernhard Broeker X-Mailer: GehtDichNenScheissdreckAn 1.0 Message-ID: <slrn970p9v.28f.rpolzer@rebounce.rpolzer-lx> User-Agent: slrn/0.9.6.2 (Linux) Date: Thu, 25 Jan 2001 18:41:19 +0100 Lines: 41 NNTP-Posting-Host: 213.6.58.46 X-Trace: 980445046 news.freenet.de 3294 213.6.58.46 X-Complaints-To: abuse AT freenet DOT de To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Hans-Bernhard Broeker <broeker AT physik DOT rwth-aachen DOT de> schrieb folgenden Unsinn: > Rudolf Polzer <rpolzer AT web DOT de> wrote: > > Hans-Bernhard Broeker <broeker AT physik DOT rwth-aachen DOT de> schrieb folgenden Unsinn: > >> Compared to both of these, ME is a pain in the lower back as it comes > >> to advanced DJGPP usage. Just as an example, you'll have no way of > >> using the full power of the YAMD memory debugger on an ME system > >> without applying that highly unofficial patch to re-enable the real > >> MS-DOS sleeping inside it. > > > But that is no argument: > > 1. if you are still programming in C it's no "advanced DJG_PP_ usage" > > Please note that the _PP_ in DJGPP has absolutely nothing to do with > C++. Advanced usage to me means that you're a programmer who expects > more from a programming toolchain than just building programs. > Debugging tools like YAMD are advanced, in that sense. Of course they are, but they are not really C++ compatible. And what else does the PP in GPP stand for except "Plus Plus"? It does not stand for "PreProcessor" since the C compiler part is GCC, and CPP is the C preprocessor, not GPP. > > 2. if you are programming in C++, an overloaded operator new() and > > operator delete() will do. > > You don't seem to have understood what YAMD really is, yet. YAMD is > better than anything you can do by redefining new()/delete() or > malloc()/free(), by a wide margin. No redefined allocation operator > will allow you to detect not only that, but *when* and *where* an > allocated buffer was overrun. Overruns do not occur in C++ code, the STL checks everything (including wrong indices of a vector). Only poor-style C++ code (or system-level code which then is in C) uses C arrays, malloc and free. The only memory allocation problems that really can occur in C++ are NULL pointers (caught by the processor => SIGSEGV) and memory leaks (then you can try redefining operators). -- Nuper erat medicus, nunc est vispillo, Diaulus: Quod vispillo facit, fecerat et medicus.