trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: March 2012

Tim - need a 'cheat sheet' to use to solve TQxzy not declared issues

From: "David C. Rankin" <drankinatty@...>
Date: Sat, 24 Mar 2012 18:20:01 -0500
Tim, anyone,

  It would be nice to have a troubleshooting 'cheat sheet' to use to solve
TQwhatever not declared failures when they are encountered. I can read c++, I
know what constructors are, what destructors are, what public and private
members are, etc.., but with a project the size of TDE, with the multiple levels
of submodule inclusion through the git tree, my eyes glaze over trying to chase
down where the declaration problems are when they are encountered.

  Case-in-point, tdeadmin. I ran into a build failure cause by 'TQListViewItem'
has not been declared:

In file included from knetworkconfdlg.cpp:11:0:
knetworkconfdlg.h:142:40: error: 'TQListViewItem' has not been declared
In file included from knetworkconfdlg.cpp:31:0:
./knetworkconfdlg.ui.h:153:6: error: prototype for 'void
KNetworkConfDlg::updateProfileNameSlot(TQListViewItem*)' does not match any in
class 'KNetworkConfDlg'
knetworkconfdlg.h:142:18: error: candidates are: virtual void
KNetworkConfDlg::updateProfileNameSlot(int*)
./knetworkconfdlg.ui.h:147:6: error:                 virtual void
KNetworkConfDlg::updateProfileNameSlot()
In file included from knetworkconfdlg.cpp:688:0:
knetworkconfdlg.moc: In member function 'virtual bool
KNetworkConfDlg::tqt_invoke(int, TQUObject*)':
knetworkconfdlg.moc:171:80: error: no matching function for call to
'KNetworkConfDlg::updateProfileNameSlot(TQListViewItem*)'
knetworkconfdlg.moc:171:80: note: candidates are:
./knetworkconfdlg.ui.h:147:6: note: virtual void
KNetworkConfDlg::updateProfileNameSlot()
./knetworkconfdlg.ui.h:147:6: note:   candidate expects 0 arguments, 1 provided
knetworkconfdlg.h:142:18: note: virtual void
KNetworkConfDlg::updateProfileNameSlot(int*)
knetworkconfdlg.h:142:18: note:   no known conversion for argument 1 from
'TQListViewItem*' to 'int*'

  If I knew where to start, then I wouldn't mind trying to figure out where to
fix the declaration error. But not knowing whether I just start grepping within
tdeadmin for TQListViewItem or whether I need to start in tqtinterface or what,
I'm somewhat left chasing my tail. I don't know if it is possible, but I know it
would help me and others if there was something like:

TQString objects are type ......
TQListViewItem objects are type .....

To fix TQxzy declaration issues:

  (1) grep for '___________' in ___________;
  (2) if declare ___________ found then
  (3) ___________; else
  (4) then grep in ______________;
  (5) if declare ____________ found then
  ...........


  Just some simple decision tree would go a long way to get everyone involved in
helping with these issues and also provide a valuable tool that would help cut
down bug squashing time even if the person can't solve it by being able to say
'I got to step 8 in troubleshooting and 1-7 are fine, but I can't figure out
what to do next...'

  Worth a thought. If somebody else can help here, please jump in.


-- 
David C. Rankin, J.D.,P.E.