home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
World_Of_Computer_Software-02-385-Vol-1of3.iso
/
g
/
gina15.zip
/
BUGS
next >
Wrap
Text File
|
1992-02-27
|
3KB
|
95 lines
AB 26.2.92
Compiling src/GnFramework.C produces lots of warnings. They can be safely
ignored.
===============================================================================
AB 14.2.92
The sleuth demo is compiled with wrong compiler options when installed in ./bin
(-g -DCONTRACTS instead of -O).
===============================================================================
AB 6.2.92
In GnViewObject::draw() muss parent_view->draw_rectangle(....) durch
this->draw_rectangle(...) ersetzt werden, da sonst Aenderungen am GC beim
zeichnen nicht beruecksichtigt werden.
<------ fixed: AG am 10.2.92
===============================================================================
Andreas Genau 10.2.92
Demo hello2 stuerzt nach Clear All mit IOT-Trap ab.
(AB) Vermutung: Der Default-Copy-Konstruktor von GnDoubleLinkedList liefert
eine ungueltige Liste, da die pointer 'next' und 'previous'
einfach nur kopiert werden und daher die Adresse des Links aus
der Original Liste enthalten. Abhilfe: Copy-Konstruktor impl.
===============================================================================
AB 10.2.92
==========
Der Menue-Eintrag "Dump Tree" in 'periodic' gibt falsche Klassennamen aus.
<------ Fixed 10.2.92
===============================================================================
AB 10.2.92
==========
The following anomalie/bug occurs when virtual functions are added as callbacks:
We currently do not know if this is a bug in the compiler or if it is our
mistake:
class A {
public:
virtual void f(caddr_t call_data);
};
class C : public A {
public:
virtual void f(caddr_t call_data);
};
If B::f is added as a callback, for example:
B *b = new B;
some_button.addActivateCallback(CALLBACK(B,f,b));
then the compiler takes the address of A::f instead of B::f. Besides the fact
that the wrong function is taken, A::f might eventually be called with a wrong
'this' pointer if multiple inheritance or virtual base classes are used.
The work-around is as follows: Define a non-virtual wrapper for f() in the class
that introduces f(), attach this as the callback and call f() from within this
function:
class A {
public:
virtual void f(caddr_t call_data);
void call_f(caddr_t call_data_) { f(call_data); }
};
class C : public A {
public:
virtual void f(caddr_t call_data);
};
B *b = new B;
some_button.addActivateCallback(CALLBACK(A,call_f,b));
===============================================================================
AG 12.2.92
Das LIST_ITERATE - Macro erzeugt keinen Iterator.
===============================================================================