Package: aplus-fsf Version: 4.18.8-11 Severity: serious Tags: patch aplus-fsf fails to build because some declarations do not have types:
if /bin/sh ../../libtool --mode=compile g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"aplus-fsf\" -DVERSION=\"4.18\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DRETSIGTYPE=void -DHAVE_STRFTIME=1 -DHAVE_UNISTD_H=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_VPRINTF=1 -DHAVE_GETCWD=1 -DHAVE_GETHOSTNAME=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_GETWD=1 -DHAVE_MKTIME=1 -DHAVE_PUTENV=1 -DHAVE_REGCOMP=1 -DHAVE_SELECT=1 -DHAVE_SIGACTION=1 -DHAVE_SOCKET=1 -DHAVE_STRCSPN=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOD=1 -DHAVE_STRTOL=1 -DHAVE_STRTOUL=1 -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_FCNTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_MALLOC_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_FILE_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYSLOG_H=1 -DHAVE_UNISTD_H=1 -DHAVE_MATH_H=1 -DHAVE_FLOAT_H=1 -DHAVE_NEW=1 -DHAVE_IOSTREAM=1 -DHAVE_IOMANIP=1 -DHAVE_FSTREAM=1 -DHAVE_SSTREAM=1 -DHAVE_IOSFWD=1 -DHAVE_FINITE=1 -DHAVE_ISINF=1 -DHAVE_STRUCT_STAT_ST_BLKSIZE=1 -DHAVE_ST_BLKSIZE=1 -DHAVE_STRUCT_STAT_ST_BLOCKS=1 -DHAVE_ST_BLOCKS=1 -DHAVE_STRUCT_STAT_ST_RDEV=1 -DHAVE_ST_RDEV=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_STRUCT_TM_TM_ZONE=1 -DHAVE_TM_ZONE=1 -DHAVE_SOCKLEN_T=1 -I. -I. -I.. -I/usr/X11R6/include -g --pipe -O2 -MT AGIFmstk.lo -MD -MP -MF ".deps/AGIFmstk.Tpo" \ -c -o AGIFmstk.lo `test -f 'AGIFmstk.C' || echo './'`AGIFmstk.C; \ then mv -f ".deps/AGIFmstk.Tpo" ".deps/AGIFmstk.Plo"; \ else rm -f ".deps/AGIFmstk.Tpo"; exit 1; \ fi g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"aplus-fsf\" -DVERSION=\"4.18\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DRETSIGTYPE=void -DHAVE_STRFTIME=1 -DHAVE_UNISTD_H=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_VPRINTF=1 -DHAVE_GETCWD=1 -DHAVE_GETHOSTNAME=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_GETWD=1 -DHAVE_MKTIME=1 -DHAVE_PUTENV=1 -DHAVE_REGCOMP=1 -DHAVE_SELECT=1 -DHAVE_SIGACTION=1 -DHAVE_SOCKET=1 -DHAVE_STRCSPN=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOD=1 -DHAVE_STRTOL=1 -DHAVE_STRTOUL=1 -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_FCNTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_MALLOC_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_FILE_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYSLOG_H=1 -DHAVE_UNISTD_H=1 -DHAVE_MATH_H=1 -DHAVE_FLOAT_H=1 -DHAVE_NEW=1 -DHAVE_IOSTREAM=1 -DHAVE_IOMANIP=1 -DHAVE_FSTREAM=1 -DHAVE_SSTREAM=1 -DHAVE_IOSFWD=1 -DHAVE_FINITE=1 -DHAVE_ISINF=1 -DHAVE_STRUCT_STAT_ST_BLKSIZE=1 -DHAVE_ST_BLKSIZE=1 -DHAVE_STRUCT_STAT_ST_BLOCKS=1 -DHAVE_ST_BLOCKS=1 -DHAVE_STRUCT_STAT_ST_RDEV=1 -DHAVE_ST_RDEV=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_STRUCT_TM_TM_ZONE=1 -DHAVE_TM_ZONE=1 -DHAVE_SOCKLEN_T=1 -I. -I. -I.. -I/usr/X11R6/include -g --pipe -O2 -MT AGIFmstk.lo -MD -MP -MF .deps/AGIFmstk.Tpo -c AGIFmstk.C -fPIC -DPIC -o .libs/AGIFmstk.o ../AplusGUI/AplusButtonBox.H:29: error: ISO C++ forbids declaration of 'AplusButtonBox' with no type ../AplusGUI/AplusButtonBox.H:29: error: expected ';' before '*' token ../AplusGUI/AplusButtonBox.H:30: error: expected `;' before 'AplusButtonBox' ../AplusGUI/AplusButtonBox.H:30: error: ISO C++ forbids declaration of 'AplusButtonBox' with no type ../AplusGUI/AplusButtonBox.H:30: error: expected ';' before '*' token ../AplusGUI/AplusButtonBox.H:31: error: expected `;' before 'virtual' ../AplusGUI/AplusCheckBox.H:31: error: ISO C++ forbids declaration of 'AplusCheckBox' with no type ../AplusGUI/AplusCheckBox.H:31: error: 'AplusCheckBox' declared as an 'inline' field ../AplusGUI/AplusCheckBox.H:32: error: expected ';' before '*' token ../AplusGUI/AplusCheckBox.H:72: error: no 'AplusCheckBox* AplusCheckButton::checkBox()' member function declared in class 'AplusCheckButton' ../AplusGUI/AplusCheckBox.H:75: error: prototype for 'const AplusCheckBox* AplusCheckButton::checkBox() const' does not match any in class 'AplusCheckButton' ../AplusGUI/AplusCheckBox.H:72: error: candidate is: AplusCheckBox* AplusCheckButton::checkBox() ../AplusGUI/AplusRadioBox.H:34: error: ISO C++ forbids declaration of 'AplusRadioBox' with no type ../AplusGUI/AplusRadioBox.H:34: error: 'AplusRadioBox' declared as an 'inline' field ../AplusGUI/AplusRadioBox.H:34: error: expected ';' before '*' token ../AplusGUI/AplusRadioBox.H:35: error: ISO C++ forbids declaration of 'AplusRadioBox' with no type ../AplusGUI/AplusRadioBox.H:35: error: 'AplusRadioBox' declared as an 'inline' field ../AplusGUI/AplusRadioBox.H:35: error: expected ';' before '*' token ../AplusGUI/AplusRadioBox.H:85: error: no 'const AplusRadioBox* AplusRadioButton::radioBox() const' member function declared in class 'AplusRadioButton' ../AplusGUI/AplusRadioBox.H:88: error: prototype for 'AplusRadioBox* AplusRadioButton::radioBox()' does not match any in class 'AplusRadioButton' ../AplusGUI/AplusRadioBox.H:85: error: candidate is: const AplusRadioBox* AplusRadioButton::radioBox() const ../MSTypes/MSTypeDataInlines.C: In static member function 'static unsigned int MSTypeData<Type, Allocator>::dataOffset() [with Type = unsigned char, Allocator = MSAllocator<unsigned char>]': ../MSTypes/MSTypeDataInlines.C:69: instantiated from 'Type* MSTypeData<Type, Allocator>::elements() [with Type = unsigned char, Allocator = MSAllocator<unsigned char>]' ../MSTypes/MSBinaryMatrix.H:302: instantiated from here ../MSTypes/MSTypeDataInlines.C:101: warning: invalid access to non-static data member 'MSDataAlignment<unsigned char>::_pElements' of NULL object ../MSTypes/MSTypeDataInlines.C:101: warning: (perhaps the 'offsetof' macro was used incorrectly) ../MSTypes/MSTypeDataInlines.C: In static member function 'static unsigned int MSTypeData<Type, Allocator>::dataOffset() [with Type = double, Allocator = MSAllocator<double>]': ../MSTypes/MSTypeDataInlines.C:69: instantiated from 'Type* MSTypeData<Type, Allocator>::elements() [with Type = double, Allocator = MSAllocator<double>]' ../MSTypes/MSFloatMatrix.H:391: instantiated from here ../MSTypes/MSTypeDataInlines.C:101: warning: invalid access to non-static data member 'MSDataAlignment<double>::_pElements' of NULL object ../MSTypes/MSTypeDataInlines.C:101: warning: (perhaps the 'offsetof' macro was used incorrectly) make[3]: *** [AGIFmstk.lo] Error 1 make[3]: Leaving directory `/tmp/buildd/aplus-fsf-4.18.8/src/AplusGUI' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/buildd/aplus-fsf-4.18.8/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/buildd/aplus-fsf-4.18.8' make: *** [build-stamp] Error 2 The attached patch fixes this problem by declaring the types before they are used. -- Matt
--- aplus-fsf-4.18.8.orig/src/AplusGUI/AplusButtonBox.H +++ aplus-fsf-4.18.8/src/AplusGUI/AplusButtonBox.H @@ -17,22 +17,6 @@ #include <AplusGUI/AplusModel.H> #include <AplusGUI/AplusCommon.H> -class AplusActionButton : public MSActionButton -{ -friend class AplusButtonBox; - -public: - AplusActionButton(MSWidget *, const char *); - ~AplusActionButton(void); - -protected: - const AplusButtonBox *buttonBox(void) const { return (AplusButtonBox *) _owner; } - AplusButtonBox *buttonBox(void) { return (AplusButtonBox *) _owner; } - virtual void focusIn(void); - virtual MSBoolean isProtected(void) const; -}; - - class AplusButtonBox : public MSActionBox { public: @@ -99,6 +83,21 @@ STANDARD_WIDGET_METHODS_H }; +class AplusActionButton : public MSActionButton +{ +friend class AplusButtonBox; + +public: + AplusActionButton(MSWidget *, const char *); + ~AplusActionButton(void); + +protected: + const AplusButtonBox *buttonBox(void) const { return (AplusButtonBox *) _owner; } + class AplusButtonBox *buttonBox(void) { return (AplusButtonBox *) _owner; } + virtual void focusIn(void); + virtual MSBoolean isProtected(void) const; +}; + inline MSBoolean AplusButtonBox::freezeIfUnfrozen(void) { MSBoolean rc=frozen(); return freeze(),rc; } inline void AplusButtonBox::unfreezeIfUnfrozen(MSBoolean bool_) { if (bool_==MSFalse) unfreeze(); } only in patch2: unchanged: --- aplus-fsf-4.18.8.orig/src/AplusGUI/AplusCheckBox.H +++ aplus-fsf-4.18.8/src/AplusGUI/AplusCheckBox.H @@ -17,31 +17,6 @@ #include <AplusGUI/AplusCommon.H> #include <AplusGUI/AplusButtonBox.H> -class AplusCheckButton : public MSCheckButton -{ -friend class AplusCheckBox; - -public: - AplusCheckButton(MSWidget *); - ~AplusCheckButton(void); - -protected: - virtual void checkBoxArm(void); - virtual void checkBoxDisarm(void); - inline const AplusCheckBox *checkBox(void) const; - inline AplusCheckBox *checkBox(void); - - virtual void up(void); - virtual void down(void); - virtual void left(void); - virtual void right(void); - - virtual void focusIn(void); - - virtual MSBoolean isProtected(void) const; -}; - - class AplusCheckBox : public AplusButtonBox { friend class AplusCheckButton; @@ -69,6 +44,30 @@ virtual void setButtonState(MSActionButton *, unsigned long); }; +class AplusCheckButton : public MSCheckButton +{ +friend class AplusCheckBox; + +public: + AplusCheckButton(MSWidget *); + ~AplusCheckButton(void); + +protected: + virtual void checkBoxArm(void); + virtual void checkBoxDisarm(void); + inline const AplusCheckBox *checkBox(void) const; + inline AplusCheckBox *checkBox(void); + + virtual void up(void); + virtual void down(void); + virtual void left(void); + virtual void right(void); + + virtual void focusIn(void); + + virtual MSBoolean isProtected(void) const; +}; + inline AplusCheckBox *AplusCheckButton::checkBox(void) { return (parentWidgetType()==AplusCheckBox::symbol()?(AplusCheckBox *)owner():0); } only in patch2: unchanged: --- aplus-fsf-4.18.8.orig/src/AplusGUI/AplusRadioBox.H +++ aplus-fsf-4.18.8/src/AplusGUI/AplusRadioBox.H @@ -17,31 +17,6 @@ #include <AplusGUI/AplusModel.H> #include <AplusGUI/AplusButtonBox.H> -class AplusRadioButton : public MSRadioButton -{ -friend class AplusRadioBox; - -public: - AplusRadioButton(MSWidget *); - ~AplusRadioButton(void); - -protected: - - virtual void radioBoxArm(void); - virtual void radioBoxDisarm(void); - virtual void radioBoxActivate(void); - - inline const AplusRadioBox *radioBox(void) const; - inline AplusRadioBox *radioBox(void); - - virtual void up(void); - virtual void down(void); - virtual void left(void); - virtual void right(void); - virtual void focusIn(void); - virtual MSBoolean isProtected(void) const; -}; - class AplusRadioBox : public AplusButtonBox { friend class AplusRadioButton; @@ -77,6 +52,32 @@ MSRadioButton *_armedButton; }; + +class AplusRadioButton : public MSRadioButton +{ +friend class AplusRadioBox; + +public: + AplusRadioButton(MSWidget *); + ~AplusRadioButton(void); + +protected: + + virtual void radioBoxArm(void); + virtual void radioBoxDisarm(void); + virtual void radioBoxActivate(void); + + inline const AplusRadioBox *radioBox(void) const; + inline AplusRadioBox *radioBox(void); + + virtual void up(void); + virtual void down(void); + virtual void left(void); + virtual void right(void); + virtual void focusIn(void); + virtual MSBoolean isProtected(void) const; +}; + inline MSRadioButton *AplusRadioBox::activeButton(void) { return (MSRadioButton *)_activeButton; } inline const MSRadioButton *AplusRadioBox::activeButton(void) const
signature.asc
Description: Digital signature