Apache OpenOffice (AOO) Bugzilla – Issue 11742
remove a lot of warnings from tools modules - break MSVC 6
Last modified: 2003-07-31 02:30:44 UTC
I have removed the -w from the compiler and I have worked through some of the warning to reduce the error messages. patches attached.
Created attachment 4842 [details] removal of all but one warning in autodoc
Created attachment 4843 [details] remove all but one udm warning
Created attachment 4844 [details] a couple of genuine errors corrected in this patch.
why all the NULL -> 0 substitutions in patch 4844 ?
Programmers assume that NULL = 0. This is not the case it is actually a pointer type and some compilers define it something like (void*)0 which is not directly compatible with an integer type which the particular lines are actually doing. The values replaced are integers parameters not pointer values.
retargeting
reassigned to mh
mh->np: please review for udm and autodoc, thanks.
Created attachment 7177 [details] Newer version of autodoc.warn2.patch
There were some issues in autodoc.warn.patch. I exchanged it for autodoc.warn2.patch. Among others, I don't want to remove the friend clause in pe_struc.hxx and pe_excp.hxx, as I'm not sure that would compile with all compilers. autodoc.warn.patch: discarded udm.warn.patch: approved. autodoc.warn2.patch: approved I cannot say anything about testshl2. Regards, Nikolai
patches are applied for ooo11rc, testshl2 seem no longer part of OOo.
Warnings still oustanding (excluding friend ones): gandalf: /data3/office/autodoc $ grep warning: build.log | sort | uniq ../inc/s2_luidl/pe_excp.hxx:270: warning: `csi::uidl::PE_Exception::PE_StructState' is already a friend of `csi::uidl::PE_Exception' ../inc/s2_luidl/pe_struc.hxx:269: warning: `csi::uidl::PE_Struct::PE_StructState' is already a friend of `csi::uidl::PE_Struct' ../inc/sci_impl.hxx:108: warning: `_STL::map<KEY, VAL, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:108: warning: `_STL::map<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:108: warning: implicit typename is deprecated, please see the documentation for details ../inc/sci_impl.hxx:122: warning: `_STL::map<KEY, VAL, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:122: warning: `_STL::map<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:122: warning: implicit typename is deprecated, please see the documentation for details ../inc/sci_impl.hxx:134: warning: `_STL::multimap<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:134: warning: implicit typename is deprecated, please see the documentation for details ../inc/sci_impl.hxx:138: warning: `_STL::multimap<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::const_iterator' is implicitly a typename ../inc/sci_impl.hxx:138: warning: implicit typename is deprecated, please see the documentation for details ../inc/sci_impl.hxx:151: warning: `_STL::multimap<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:151: warning: implicit typename is deprecated, please see the documentation for details ../inc/sci_impl.hxx:196: warning: `_STL::map<KEY, VAL, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::const_iterator' is implicitly a typename ../inc/sci_impl.hxx:196: warning: `_STL::map<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::const_iterator' is implicitly a typename ../inc/sci_impl.hxx:196: warning: implicit typename is deprecated, please see the documentation for details ../inc/sci_impl.hxx:286: warning: `_STL::map<KEY, VAL, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:286: warning: `_STL::map<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:286: warning: implicit typename is deprecated, please see the documentation for details ../inc/sci_impl.hxx:337: warning: `_STL::multimap<KEY, VALUE, _STL::less<_Tp>, _STL::allocator<_STL::pair<const _Key, _Tp> > >::value_type' is implicitly a typename ../inc/sci_impl.hxx:337: warning: implicit typename is deprecated, please see the documentation for details ../inc/store/st_iterator.hxx:293: warning: `ary::store::RootFilterConstIterator<UNIT, FILTER>::unit_type' is implicitly a typename ../inc/store/st_iterator.hxx:293: warning: implicit typename is deprecated, please see the documentation for details ../inc/store/st_iterator.hxx:320: warning: `ary::store::RootFilterIterator<UNIT, FILTER>::unit_type' is implicitly a typename ../inc/store/st_iterator.hxx:320: warning: implicit typename is deprecated, please see the documentation for details ../inc/store/st_iterator.hxx:324: warning: `ary::store::RootFilterIterator<UNIT, FILTER>::self' is implicitly a typename ../inc/store/st_iterator.hxx:324: warning: implicit typename is deprecated, please see the documentation for details /data3/office/autodoc/source/display/toolkit/hf_funcdecl.cxx:116:1: warning: no newline at end of file
Created attachment 7186 [details] revised autodoc cleanup patch.
approved, please commit
Setting prio to 1, because W32 is broken. Errm, part of this patch, namely autodoc/source/ary/store/t_storg.hxx rev1.1.1.1.52.1 breaks the MSVC 6 build. See errorlog below. .NET has no problems with the change. I propose reverting the patch for t_storg.hxx for now, and apply it once we open our OOo 2.0 codeline and MSVC6 is obsolete. ------------------------------ Making: ../../../wntmsci9.pro/obj/sto_cpp.obj guw.pl /cygdrive/c/PROGRA~1/MSVS6/VC98/bin/cl.exe -Zm200 -c -nologo -Gs -Gy -I. -I. -I../inc -I../../../source/inc -I../../../inc -I../../../WIN/inc -I../../../wntmsci9.pro/inc -I. -I/w1/cws_srx645_ooo11rccyg/solver/645/wntmsci9.pro/inc/stl -I/w1/cws_srx645_ooo11rccyg/solver/645/wntmsci9.pro/inc/external -I/w1/cws_srx645_ooo11rccyg/solver/645/wntmsci9.pro/inc -I/w1/cws_srx645_ooo11rccyg/solenv/wntmsci9/inc -I/w1/cws_srx645_ooo11rccyg/solenv/inc -I/w1/cws_srx645_ooo11rccyg/res -I/w1/cws_srx645_ooo11rccyg/solver/645/wntmsci9.pro/inc/stl -I/cygdrive/c/jdk1.3.1_02/include/win32 -I/cygdrive/c/jdk1.3.1_02/include -I'/cygdrive/c/psdk02_2003/include' -I/cygdrive/c/PROGRA~1/MSVS6/VC98/include -I. -I../../../res -I. -Ob1 -Ox -Oy- -Gd -GR -GX -DWNT -DWNT -DNT351 -DMSC -DMI200 -DINTEL -D_USE_NAMESPACE -D_X86_=1 -DFULL_DESK -DSTLPORT_VERSION=400 -DWINVER=0x400 -D_WIN32_IE=0x400 -D_MT -DCPPU_ENV=msci -DSUPD=645 -DBUILD=8639 -DPRODUCT -DNDEBUG -DPRODUCT_FULL -DOSL_DEBUG_LEVEL=0 -DOPTIMIZE -DEXCEPTIONS_ON -DCUI -DSOLAR_JAVA -DSRX645 -DMULTITHREAD -DWIN32 -D_MT -D_DLL -DWIN32 -D_MT -D_DLL -W3 -Fo../../../wntmsci9.pro/obj/sto_cpp.obj /w1/cws_srx645_ooo11rccyg/autodoc/source/ary/store/sto_cpp.cxx guw.pl /cygdrive/c/PROGRA~1/MSVS6/VC98/bin/cl.exe @/tmp/mk610cb5e0.11 Command: /cygdrive/c/PROGRA~1/MSVS6/VC98/bin/cl.exe sto_cpp.cxx e:\w1\cws_srx645_ooo11rccyg\autodoc\source\ary\store\t_storg.hxx(134) : error C2899: typename cannot be used outside a template declaration e:\w1\cws_srx645_ooo11rccyg\solver\645\wntmsci9.pro\inc\stl\stl/_alloc.h(408) : while compiling class-template member function 'class ary::CodeEntity &__thiscall ary::store::StdReStorage<class ary::CodeEntity>::do_Add(const unsigned long &,class ary::CodeEntity &)' e:\w1\cws_srx645_ooo11rccyg\autodoc\source\ary\store\t_storg.hxx(134) : error C2899: typename cannot be used outside a template declaration e:\w1\cws_srx645_ooo11rccyg\solver\645\wntmsci9.pro\inc\stl\stl/_alloc.h(408) : while compiling class-template member function 'class ary::cpp::UsedType &__thiscall ary::store::StdReStorage<class ary::cpp::UsedType>::do_Add(const unsigned long &,class ary::cpp::UsedType &)' e:\w1\cws_srx645_ooo11rccyg\autodoc\source\ary\store\t_storg.hxx(134) : error C2899: typename cannot be used outside a template declaration e:\w1\cws_srx645_ooo11rccyg\solver\645\wntmsci9.pro\inc\stl\stl/_alloc.h(408) : while compiling class-template member function 'class ary::cpp::Define &__thiscall ary::store::StdReStorage<class ary::cpp::Define>::do_Add(const unsigned long &,class ary::cpp::Define &)' e:\w1\cws_srx645_ooo11rccyg\autodoc\source\ary\store\t_storg.hxx(134) : error C2899: typename cannot be used outside a template declaration e:\w1\cws_srx645_ooo11rccyg\solver\645\wntmsci9.pro\inc\stl\stl/_alloc.h(408) : while compiling class-template member function 'class ary::cpp::Macro &__thiscall ary::store::StdReStorage<class ary::cpp::Macro>::do_Add(const unsigned long &,class ary::cpp::Macro &)' e:\w1\cws_srx645_ooo11rccyg\autodoc\source\ary\store\t_storg.hxx(134) : error C2899: typename cannot be used outside a template declaration e:\w1\cws_srx645_ooo11rccyg\solver\645\wntmsci9.pro\inc\stl\stl/_alloc.h(408) : while compiling class-template member function 'class ary::cpp::OperationSignature &__thiscall ary::store::StdReStorage<class ary::cpp::OperationSignature>::do_Add(const unsigned long &,class ary::cpp::OperationSignature &)' dmake: Error code 2, while making '../../../wntmsci9.pro/obj/sto_cpp.obj' echo: No match. ERROR: Error 65280 occurred while making /w1/cws_srx645_ooo11rccyg/autodoc/source/ary/store dmake: Error code 1, while making 'build_all' echo: No match. ---
I reverted the part of the patch to t_storg.hxx that breaks MSVC 6. It can be put back in when we obsolete MSVC 6. diff -u -r1.1.1.1.52.1 t_storg.hxx --- autodoc/source/ary/store/t_storg.hxx 27 Jun 2003 08:25:03 -0000 1.1.1.1.52.1 +++ autodoc/source/ary/store/t_storg.hxx 28 Jun 2003 13:58:46 -0000 @@ -131,7 +131,7 @@ StdReStorage<RE>::do_Add( const KEY & i_rKey, DYN RE & let_drElement ) { - std::pair<typename DataBase::iterator, bool> result + std::pair<DataBase::iterator, bool> result = aDataBase.insert(DataBase::value_type(i_rKey, &let_drElement)); if (result.second == false) delete &let_drElement;
Verifying.
Closing