Bug 70627 - deleteToolWindow method not implemented in mainwindow.cpp
Summary: deleteToolWindow method not implemented in mainwindow.cpp
Status: RESOLVED NOT A BUG
Alias: None
Product: kdevelop
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: KDevelop Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-12-16 18:40 UTC by Mike Perik
Modified: 2003-12-16 23:36 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Perik 2003-12-16 18:40:03 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
Compiler:          gcc version 2.96 20000731 (Red Hat Linux 7.3 
OS:          Linux

I'm attempting to compile the KDE_3_2_0_BETA_2 source.

The KMdiMainFrm class declares the functions

   virtual void deleteToolWindow( QWidget* pWnd);
   virtual void deleteToolWindow( KMdiToolViewAccessor *accessor);

and the MainWindow class inherits the KMdiMainFrm class but does not implement them even though it is called in the removeView(QWidget *view) method.
Comment 1 Jens Dagerbo 2003-12-16 22:28:27 UTC
Hmm.. is this a compile error you are reporting? If so, don't do it at b.k.o, do it on the mailinglist and please provide the error output.

(If you are trying to compile the KDevelop3 beta2 sources on KDE-3.1/3.0 I think there was some problems, since fixed in CVS.)
Comment 2 Mike Perik 2003-12-16 23:13:25 UTC
I'm building against the KDE_3_2_0_BETA_2 tree both of kdevelop and basic kde installation.  It still doesn't seem like a compiler bug to be calling a method that is virtual but not implemented.
Comment 3 Mike Perik 2003-12-16 23:14:49 UTC
Forgot the compile error:

Making all in profiles
make[1]: Entering directory `/home/mrp/kde3.1/source/kdevelop/src/profiles'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/mrp/kde3.1/source/kdevelop/src/profiles'
make[1]: Entering directory `/home/mrp/kde3.1/source/kdevelop/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../lib/interfaces -I../lib/util -I../lib -I../lib/qextmdi -I../lib/structure -I/home/mrp/kde/include -I/usr/X11R6/include   -DQT_THREAD_SUPPORT  -D_REENTRANT  -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -W -Wpointer-arith -Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -O2 -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION  -MT mainwindow.o -MD -MP -MF ".deps/mainwindow.Tpo" \
  -c -o mainwindow.o `test -f 'mainwindow.cpp' || echo './'`mainwindow.cpp; \
then mv -f ".deps/mainwindow.Tpo" ".deps/mainwindow.Po"; \
else rm -f ".deps/mainwindow.Tpo"; exit 1; \
fi
mainwindow.cpp:208:2: warning: #warning this crashes in ideal mode, looks like there are dangling pointers on opening another project
mainwindow.cpp: In method `void MainWindow::embedSelectView (QWidget *,
const QString &, const QString &)':
mainwindow.cpp:488: warning: unused variable `KMdiToolViewAccessor *tmp
'
mainwindow.cpp: In method `void MainWindow::embedSelectViewRight
(QWidget *, const QString &, const QString &)':
mainwindow.cpp:520: warning: unused variable `KMdiToolViewAccessor *tmp
'
mainwindow.cpp: In method `void MainWindow::embedOutputView (QWidget *,
const QString &, const QString &)':
mainwindow.cpp:536: warning: unused variable `KMdiToolViewAccessor *tmp
'
mainwindow.cpp: In method `void MainWindow::removeView (QWidget *)':
mainwindow.cpp:605: `deleteToolWindow' undeclared (first use this
function)
mainwindow.cpp:605: (Each undeclared identifier is reported only once
for each function it appears in.)
make[1]: *** [mainwindow.o] Error 1
make[1]: Leaving directory `/home/mrp/kde3.1/source/kdevelop/src'
make: *** [all-recursive] Error 1
Comment 4 Jens Dagerbo 2003-12-16 23:36:14 UTC
Well.. I never meant to suggest that it was a "compiler bug" (but seeing how you're using "2.96" I can see how you must have run into that suggestion before..).

It is not an error not to reimplement a virtual method if the existing method is sufficient, and it sure isn't the cause for the compile error.

Actually, I have a hard time seeing how the compiler manages NOT to know of a method declared in the base class. Perhaps this is a compiler bug after all...

In either case, there is nothing we can do to retroactively fix the tagged sources, which is part of why it makes very little sense to report compile errors to the bug system. They should go to the mailinglist.

My only other suggestion is for you to try CVS HEAD instead of the beta tag, since you appear to be using CVS anyway. Good luck.

Closing.