You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by Don Lewis <tr...@apache.org> on 2016/09/01 22:29:36 UTC
Re: compiler warnings when building OpenOffice
On 29 Aug, Don Lewis wrote:
> When building OpenOffice trunk revsion r1758161 as a FreeBSD port on
> FreeBSD 12.0-CURRENT with clang 3.8.0, I get the following warnings.
> I'm mostly interested in the OpenOffice code and not the bundled
> external code, so I specifically built the FreeBSD port it uses
> --with-system-foo extensively which minimizes the compilation of third
> party code. The total number of warnings is 5105.
>
> 1175 -Wtautological-undefined-compare
> 949 -Wunused-private-field
> 660 -Wshift-negative-value
> 391 -Wunused-parameter
> 362 -Wunused-const-variable
> 312 -Woverloaded-virtual
> 177 -Wunused-variable
> 116 -Winfinite-recursion
> 109 -Wlogical-op-parentheses
> 93 -Wsign-compare
> 76 -Wdelete-non-virtual-dtor
> 72 -Wint-to-void-pointer-cast
> 63 -Wshadow
> 55 -Wunused-function
> 41 -Wformat
> 36 -Wreturn-type-c-linkage
> 30 -Wchar-subscripts
> 27 -Wdeprecated-declarations
> 26 -Wundefined-bool-conversion
> 26 -Wsizeof-pointer-memaccess
> 26 -Wformat-security
> 24 -Wunused-local-typedef
> 22 -Wmacro-redefined
> 21 -Wswitch
> 20 -Wbitwise-op-parentheses
> 18 -Winvalid-source-encoding
> 13 -Wuninitialized
> 11 -Wtautological-compare
> 11 -Wlogical-not-parentheses
> 11 -Wdangling-else
> 9 -Wmismatched-new-delete
> 8 -Wimplicit-function-declaration
> 8 -Wheader-guard
> 8 -Wcomment
> 7 -Wtautological-constant-out-of-range-compare
> 7 -Wself-assign
> 6 -Wunused-value
> 6 -Wunneeded-internal-declaration
> 6 -Wtautological-pointer-compare
> 6 -Wpointer-bool-conversion
> 6 -Wparentheses-equality
> 6 -Wdynamic-class-memaccess
> 6 -Wconstant-conversion
> 5 -Wpointer-sign
> 4 -Wnull-conversion
> 3 -Wunsequenced
> 3 -Wreorder
> 3 -Wknr-promoted-parameter
> 3 -Wint-to-pointer-cast
> 2 -Wstrncat-size
> 2 -Wstring-compare
> 2 -Wsometimes-uninitialized
> 2 -Wconstant-logical-operand
> 2 -Warray-bounds
> 1 -Wunused-comparison
> 1 -Wunknown-pragmas
> 1 -Wstring-plus-int
> 1 -Wpotentially-evaluated-expression
> 1 -Wnon-literal-null-conversion
> 1 -Wmismatched-tags
> 1 -Wincompatible-pointer-types-discards-qualifiers
> 1 -Wimplicit-int
> 1 -Wignored-qualifiers
> 1 -Wformat-extra-args
> 1 -Wcompare-distinct-pointer-types
> 1 -Wc++11-compat-deprecated-writable-strings
Now down to 2708 warnings. It'll be slower going from this point
forward because each of the remaining issues will have a much smaller
impact on the warning count that many of the ones I have already fixed.
FWIW, bundled icc is getting to be a significant contributer to the
remaining warnings.
One of the -Wunused-parameter warnings led me to this questionable bit
of code in filter/source/xsltfilter/containerhelper.hxx:
template<typename FuncType, typename ParamType>
inline void forEachMem(FuncType pFunc, ParamType aParam) const
{
forEach( ::boost::bind(pFunc, _1, aParam));
}
template<typename FuncType, typename ParamType1, typename ParamType2>
inline void forEachMem(FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2) const
{
forEach( ::boost::bind(pFunc, -1, aParam1, aParam2 ));
}
template<typename FuncType, typename ParamType1, typename ParamType2, typename ParamType3>
inline void forEachMem( FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2, ParamType3 aParam3 ) const
{
forEach( ::boost::bind(pFunc, _1, aParam2, aParam2, aParam3 ));
}
In the three parameter version of this code, it looks like aParam1
should be used instead of using aParam2 twice. Also, in the two
parameter version of the code, it looks like _1 should be used instead
of -1. I haven't had a chance to investigate the possible symptoms of
these errors or how to text the appropriate fix.
493 -Wunused-private-field
391 -Wunused-parameter
366 -Wunused-const-variable
314 -Woverloaded-virtual
181 -Wunused-variable
109 -Wlogical-op-parentheses
93 -Wsign-compare
77 -Wdelete-non-virtual-dtor
72 -Wint-to-void-pointer-cast
63 -Wshadow
56 -Wunused-function
41 -Wformat
36 -Wreturn-type-c-linkage
30 -Wchar-subscripts
27 -Wdeprecated-declarations
26 -Wundefined-bool-conversion
26 -Wsizeof-pointer-memaccess
25 -Wtautological-undefined-compare
24 -Wunused-local-typedef
22 -Wmacro-redefined
21 -Wswitch
20 -Wbitwise-op-parentheses
18 -Winvalid-source-encoding
13 -Wuninitialized
11 -Wtautological-compare
11 -Wlogical-not-parentheses
11 -Wdangling-else
9 -Wmismatched-new-delete
8 -Wimplicit-function-declaration
8 -Wcomment
7 -Wtautological-constant-out-of-range-compare
7 -Wself-assign
7 -Wheader-guard
6 -Wunused-value
6 -Wunneeded-internal-declaration
6 -Wtautological-pointer-compare
6 -Wpointer-bool-conversion
6 -Wparentheses-equality
6 -Wdynamic-class-memaccess
6 -Wconstant-conversion
5 -Wpointer-sign
4 -Wnull-conversion
3 -Wunsequenced
3 -Wreorder
3 -Wknr-promoted-parameter
3 -Wint-to-pointer-cast
2 -Wstrncat-size
2 -Wstring-compare
2 -Wsometimes-uninitialized
2 -Wconstant-logical-operand
2 -Warray-bounds
1 -Wunused-comparison
1 -Wunknown-pragmas
1 -Wstring-plus-int
1 -Wpotentially-evaluated-expression
1 -Wnon-literal-null-conversion
1 -Wmismatched-tags
1 -Wincompatible-pointer-types-discards-qualifiers
1 -Wimplicit-int
1 -Wignored-qualifiers
1 -Wformat-extra-args
1 -Wcompare-distinct-pointer-types
1 -Wc++11-compat-deprecated-writable-strings
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org
Re: compiler warnings when building OpenOffice
Posted by Patricia Shanahan <pa...@acm.org>.
On 9/4/2016 3:45 PM, Patricia Shanahan wrote:
> On 9/1/2016 4:00 PM, Don Lewis wrote:
>> On 1 Sep, Patricia Shanahan wrote:
>>> I need a problem to work on. Would you like me to take a particular
>>> compiler warning and try to sort it out?
>>
>> Here is one:
>>
>> /wrkdirs/usr/ports/editors/openoffice-devel2/work/aoo-4.2.0/main/solver/420/unxfbsdx.pro/inc/osl/diagnose.hxx:65:25:
>> warning: 'osl_detail_ObjectRegistry_getMutex' has C-linkage specified,
>> but returns user-defined type '::osl::Mutex &' which is incompatible
>> with C [-Wreturn-type-c-linkage]
>>
>> In sal/inc/osl/diagnose.hxx,
>> ::osl::Mutex & SAL_CALL osl_detail_ObjectRegistry_getMutex()
>> is declared inside an extern "C" block, so it should have C linkage, but
>> it is returning a reference, which is a C++ thing.
>>
>> The obvious fix would seem to be to move it out of the extern "C" block,
>> but I don't know what to do about the SAL_THROW_EXTERN_C() part of the
>> declaration.
>
> I have compiled and done some basic tests with the declaration simply
> moved out of the extern "C" block, and it did not appear to cause any
> problems. I'll look into SAL_THROW_EXTERN_C next.
SAL_THROW_EXTERN_C and SAL_THROW are concerned with generating, or not
generating, a dynamic exception specification in a function declaration.
According to Wikipedia,
https://en.wikipedia.org/wiki/C%2B%2B11#Features_removed_or_deprecated,
dynamic exception specifications have been deprecated since C++11.
SAL_THROW_EXTERN_C with __cplusplus defined generates "throw ()",
regardless of the linkage.
My recommendation is to leave it unchanged, but at some point we should
examine and reconsider both SAL_THROW macros.
They are declared in main/sal/inc/sal/types.h
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org
Re: compiler warnings when building OpenOffice
Posted by Patricia Shanahan <pa...@acm.org>.
On 9/1/2016 4:00 PM, Don Lewis wrote:
> On 1 Sep, Patricia Shanahan wrote:
>> I need a problem to work on. Would you like me to take a particular
>> compiler warning and try to sort it out?
>
> Here is one:
>
> /wrkdirs/usr/ports/editors/openoffice-devel2/work/aoo-4.2.0/main/solver/420/unxfbsdx.pro/inc/osl/diagnose.hxx:65:25: warning: 'osl_detail_ObjectRegistry_getMutex' has C-linkage specified, but returns user-defined type '::osl::Mutex &' which is incompatible with C [-Wreturn-type-c-linkage]
>
> In sal/inc/osl/diagnose.hxx,
> ::osl::Mutex & SAL_CALL osl_detail_ObjectRegistry_getMutex()
> is declared inside an extern "C" block, so it should have C linkage, but
> it is returning a reference, which is a C++ thing.
>
> The obvious fix would seem to be to move it out of the extern "C" block,
> but I don't know what to do about the SAL_THROW_EXTERN_C() part of the
> declaration.
I have compiled and done some basic tests with the declaration simply
moved out of the extern "C" block, and it did not appear to cause any
problems. I'll look into SAL_THROW_EXTERN_C next.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org
Re: compiler warnings when building OpenOffice
Posted by Don Lewis <tr...@apache.org>.
On 1 Sep, Patricia Shanahan wrote:
> I need a problem to work on. Would you like me to take a particular
> compiler warning and try to sort it out?
Here is one:
/wrkdirs/usr/ports/editors/openoffice-devel2/work/aoo-4.2.0/main/solver/420/unxfbsdx.pro/inc/osl/diagnose.hxx:65:25: warning: 'osl_detail_ObjectRegistry_getMutex' has C-linkage specified, but returns user-defined type '::osl::Mutex &' which is incompatible with C [-Wreturn-type-c-linkage]
In sal/inc/osl/diagnose.hxx,
::osl::Mutex & SAL_CALL osl_detail_ObjectRegistry_getMutex()
is declared inside an extern "C" block, so it should have C linkage, but
it is returning a reference, which is a C++ thing.
The obvious fix would seem to be to move it out of the extern "C" block,
but I don't know what to do about the SAL_THROW_EXTERN_C() part of the
declaration.
Another one is -Woverloaded-virtual which has a number of instances.
These are the top three in terms of warning count (due to repeats):
main/solver/420/unxfbsdx.pro/inc/cppuhelper/compbase4.hxx:75:31: warning: 'cppu::WeakComponentImplHelper4<com::sun::star::accessibility::XAccessible, com::sun::star::accessibility::XAccessibleContext, com::sun::star::accessibility::XAccessibleEventBroadcaster, com::sun::star::lang::XServiceInfo>::addEventListener' hides overloaded virtual function [-Woverloaded-virtual]
main/solver/420/unxfbsdx.pro/inc/cppuhelper/compbase4.hxx:77:31: warning: 'cppu::WeakComponentImplHelper4<com::sun::star::accessibility::XAccessible, com::sun::star::accessibility::XAccessibleContext, com::sun::star::accessibility::XAccessibleEventBroadcaster, com::sun::star::lang::XServiceInfo>::removeEventListener' hides overloaded virtual function [-Woverloaded-virtual]
main/solver/420/unxfbsdx.pro/inc/canvas/base/graphicdevicebase.hxx:145:31: warning: 'canvas::GraphicDeviceBase<canvas::BaseMutexHelper<cppu::WeakComponentImplHelper9<com::sun::star::rendering::XSpriteCanvas, com::sun::star::rendering::XIntegerBitmap, com::sun::star::rendering::XGraphicDevice, com::sun::star::lang::XMultiServiceFactory, com::sun::star::rendering::XBufferController, com::sun::star::awt::XWindowListener, com::sun::star::util::XUpdatable, com::sun::star::beans::XPropertySet, com::sun::star::lang::XServiceName> >, vclcanvas::SpriteDeviceHelper, vclcanvas::tools::LocalGuard, cppu::OWeakObject>::disposing' hides overloaded virtual function [-Woverloaded-virtual]
I'm not sure if there is really a problem here or if the warning is
harmless.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org
Re: compiler warnings when building OpenOffice
Posted by Patricia Shanahan <pa...@acm.org>.
I need a problem to work on. Would you like me to take a particular
compiler warning and try to sort it out?
On 9/1/2016 3:29 PM, Don Lewis wrote:
> On 29 Aug, Don Lewis wrote:
>> When building OpenOffice trunk revsion r1758161 as a FreeBSD port on
>> FreeBSD 12.0-CURRENT with clang 3.8.0, I get the following warnings.
>> I'm mostly interested in the OpenOffice code and not the bundled
>> external code, so I specifically built the FreeBSD port it uses
>> --with-system-foo extensively which minimizes the compilation of third
>> party code. The total number of warnings is 5105.
>>
>> 1175 -Wtautological-undefined-compare
>> 949 -Wunused-private-field
>> 660 -Wshift-negative-value
>> 391 -Wunused-parameter
>> 362 -Wunused-const-variable
>> 312 -Woverloaded-virtual
>> 177 -Wunused-variable
>> 116 -Winfinite-recursion
>> 109 -Wlogical-op-parentheses
>> 93 -Wsign-compare
>> 76 -Wdelete-non-virtual-dtor
>> 72 -Wint-to-void-pointer-cast
>> 63 -Wshadow
>> 55 -Wunused-function
>> 41 -Wformat
>> 36 -Wreturn-type-c-linkage
>> 30 -Wchar-subscripts
>> 27 -Wdeprecated-declarations
>> 26 -Wundefined-bool-conversion
>> 26 -Wsizeof-pointer-memaccess
>> 26 -Wformat-security
>> 24 -Wunused-local-typedef
>> 22 -Wmacro-redefined
>> 21 -Wswitch
>> 20 -Wbitwise-op-parentheses
>> 18 -Winvalid-source-encoding
>> 13 -Wuninitialized
>> 11 -Wtautological-compare
>> 11 -Wlogical-not-parentheses
>> 11 -Wdangling-else
>> 9 -Wmismatched-new-delete
>> 8 -Wimplicit-function-declaration
>> 8 -Wheader-guard
>> 8 -Wcomment
>> 7 -Wtautological-constant-out-of-range-compare
>> 7 -Wself-assign
>> 6 -Wunused-value
>> 6 -Wunneeded-internal-declaration
>> 6 -Wtautological-pointer-compare
>> 6 -Wpointer-bool-conversion
>> 6 -Wparentheses-equality
>> 6 -Wdynamic-class-memaccess
>> 6 -Wconstant-conversion
>> 5 -Wpointer-sign
>> 4 -Wnull-conversion
>> 3 -Wunsequenced
>> 3 -Wreorder
>> 3 -Wknr-promoted-parameter
>> 3 -Wint-to-pointer-cast
>> 2 -Wstrncat-size
>> 2 -Wstring-compare
>> 2 -Wsometimes-uninitialized
>> 2 -Wconstant-logical-operand
>> 2 -Warray-bounds
>> 1 -Wunused-comparison
>> 1 -Wunknown-pragmas
>> 1 -Wstring-plus-int
>> 1 -Wpotentially-evaluated-expression
>> 1 -Wnon-literal-null-conversion
>> 1 -Wmismatched-tags
>> 1 -Wincompatible-pointer-types-discards-qualifiers
>> 1 -Wimplicit-int
>> 1 -Wignored-qualifiers
>> 1 -Wformat-extra-args
>> 1 -Wcompare-distinct-pointer-types
>> 1 -Wc++11-compat-deprecated-writable-strings
>
> Now down to 2708 warnings. It'll be slower going from this point
> forward because each of the remaining issues will have a much smaller
> impact on the warning count that many of the ones I have already fixed.
>
> FWIW, bundled icc is getting to be a significant contributer to the
> remaining warnings.
>
> One of the -Wunused-parameter warnings led me to this questionable bit
> of code in filter/source/xsltfilter/containerhelper.hxx:
>
> template<typename FuncType, typename ParamType>
> inline void forEachMem(FuncType pFunc, ParamType aParam) const
> {
> forEach( ::boost::bind(pFunc, _1, aParam));
> }
>
> template<typename FuncType, typename ParamType1, typename ParamType2>
> inline void forEachMem(FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2) const
> {
> forEach( ::boost::bind(pFunc, -1, aParam1, aParam2 ));
> }
>
> template<typename FuncType, typename ParamType1, typename ParamType2, typename ParamType3>
> inline void forEachMem( FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2, ParamType3 aParam3 ) const
> {
> forEach( ::boost::bind(pFunc, _1, aParam2, aParam2, aParam3 ));
> }
>
> In the three parameter version of this code, it looks like aParam1
> should be used instead of using aParam2 twice. Also, in the two
> parameter version of the code, it looks like _1 should be used instead
> of -1. I haven't had a chance to investigate the possible symptoms of
> these errors or how to text the appropriate fix.
>
> 493 -Wunused-private-field
> 391 -Wunused-parameter
> 366 -Wunused-const-variable
> 314 -Woverloaded-virtual
> 181 -Wunused-variable
> 109 -Wlogical-op-parentheses
> 93 -Wsign-compare
> 77 -Wdelete-non-virtual-dtor
> 72 -Wint-to-void-pointer-cast
> 63 -Wshadow
> 56 -Wunused-function
> 41 -Wformat
> 36 -Wreturn-type-c-linkage
> 30 -Wchar-subscripts
> 27 -Wdeprecated-declarations
> 26 -Wundefined-bool-conversion
> 26 -Wsizeof-pointer-memaccess
> 25 -Wtautological-undefined-compare
> 24 -Wunused-local-typedef
> 22 -Wmacro-redefined
> 21 -Wswitch
> 20 -Wbitwise-op-parentheses
> 18 -Winvalid-source-encoding
> 13 -Wuninitialized
> 11 -Wtautological-compare
> 11 -Wlogical-not-parentheses
> 11 -Wdangling-else
> 9 -Wmismatched-new-delete
> 8 -Wimplicit-function-declaration
> 8 -Wcomment
> 7 -Wtautological-constant-out-of-range-compare
> 7 -Wself-assign
> 7 -Wheader-guard
> 6 -Wunused-value
> 6 -Wunneeded-internal-declaration
> 6 -Wtautological-pointer-compare
> 6 -Wpointer-bool-conversion
> 6 -Wparentheses-equality
> 6 -Wdynamic-class-memaccess
> 6 -Wconstant-conversion
> 5 -Wpointer-sign
> 4 -Wnull-conversion
> 3 -Wunsequenced
> 3 -Wreorder
> 3 -Wknr-promoted-parameter
> 3 -Wint-to-pointer-cast
> 2 -Wstrncat-size
> 2 -Wstring-compare
> 2 -Wsometimes-uninitialized
> 2 -Wconstant-logical-operand
> 2 -Warray-bounds
> 1 -Wunused-comparison
> 1 -Wunknown-pragmas
> 1 -Wstring-plus-int
> 1 -Wpotentially-evaluated-expression
> 1 -Wnon-literal-null-conversion
> 1 -Wmismatched-tags
> 1 -Wincompatible-pointer-types-discards-qualifiers
> 1 -Wimplicit-int
> 1 -Wignored-qualifiers
> 1 -Wformat-extra-args
> 1 -Wcompare-distinct-pointer-types
> 1 -Wc++11-compat-deprecated-writable-strings
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
> For additional commands, e-mail: dev-help@openoffice.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org
Re: compiler warnings when building OpenOffice
Posted by Don Lewis <tr...@apache.org>.
On 1 Sep, Don Lewis wrote:
> 493 -Wunused-private-field
> 391 -Wunused-parameter
> 366 -Wunused-const-variable
> 314 -Woverloaded-virtual
> 181 -Wunused-variable
> 109 -Wlogical-op-parentheses
> 93 -Wsign-compare
> 77 -Wdelete-non-virtual-dtor
> 72 -Wint-to-void-pointer-cast
> 63 -Wshadow
> 56 -Wunused-function
> 41 -Wformat
> 36 -Wreturn-type-c-linkage
> 30 -Wchar-subscripts
> 27 -Wdeprecated-declarations
> 26 -Wundefined-bool-conversion
> 26 -Wsizeof-pointer-memaccess
> 25 -Wtautological-undefined-compare
> 24 -Wunused-local-typedef
> 22 -Wmacro-redefined
> 21 -Wswitch
> 20 -Wbitwise-op-parentheses
> 18 -Winvalid-source-encoding
> 13 -Wuninitialized
> 11 -Wtautological-compare
> 11 -Wlogical-not-parentheses
> 11 -Wdangling-else
> 9 -Wmismatched-new-delete
> 8 -Wimplicit-function-declaration
> 8 -Wcomment
> 7 -Wtautological-constant-out-of-range-compare
> 7 -Wself-assign
> 7 -Wheader-guard
> 6 -Wunused-value
> 6 -Wunneeded-internal-declaration
> 6 -Wtautological-pointer-compare
> 6 -Wpointer-bool-conversion
> 6 -Wparentheses-equality
> 6 -Wdynamic-class-memaccess
> 6 -Wconstant-conversion
> 5 -Wpointer-sign
> 4 -Wnull-conversion
> 3 -Wunsequenced
> 3 -Wreorder
> 3 -Wknr-promoted-parameter
> 3 -Wint-to-pointer-cast
> 2 -Wstrncat-size
> 2 -Wstring-compare
> 2 -Wsometimes-uninitialized
> 2 -Wconstant-logical-operand
> 2 -Warray-bounds
> 1 -Wunused-comparison
> 1 -Wunknown-pragmas
> 1 -Wstring-plus-int
> 1 -Wpotentially-evaluated-expression
> 1 -Wnon-literal-null-conversion
> 1 -Wmismatched-tags
> 1 -Wincompatible-pointer-types-discards-qualifiers
> 1 -Wimplicit-int
> 1 -Wignored-qualifiers
> 1 -Wformat-extra-args
> 1 -Wcompare-distinct-pointer-types
> 1 -Wc++11-compat-deprecated-writable-strings
Here is the per-module warning count:
513 icc
222 sw
167 svx
154 icu
151 oox
149 sc
145 sd
107 svtools
72 vcl
70 sal
67 xmloff
52 i18npool
46 cui
42 sfx2
40 connectivity
39 dbaccess
38 canvas
36 slideshow
34 sdext
31 filter
29 xmlhelp
29 libxmlsec
29 chart2
28 framework
27 toolkit
25 editeng
25 accessibility
24 reportdesign
22 l10ntools
20 basic
20 basegfx
19 desktop
19 automation
14 xmlsecurity
14 avmedia
12 ucb
11 extensions
11 cppuhelper
10 writerfilter
10 unoxml
9 starmath
9 basctl
7 tools
7 soltools
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org
Re: compiler warnings when building OpenOffice
Posted by Don Lewis <tr...@apache.org>.
On 1 Sep, To: Don Lewis wrote:
> One of the -Wunused-parameter warnings led me to this questionable bit
> of code in filter/source/xsltfilter/containerhelper.hxx:
>
> template<typename FuncType, typename ParamType>
> inline void forEachMem(FuncType pFunc, ParamType aParam) const
> {
> forEach( ::boost::bind(pFunc, _1, aParam));
> }
>
> template<typename FuncType, typename ParamType1, typename ParamType2>
> inline void forEachMem(FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2) const
> {
> forEach( ::boost::bind(pFunc, -1, aParam1, aParam2 ));
> }
>
> template<typename FuncType, typename ParamType1, typename ParamType2, typename ParamType3>
> inline void forEachMem( FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2, ParamType3 aParam3 ) const
> {
> forEach( ::boost::bind(pFunc, _1, aParam2, aParam2, aParam3 ));
> }
>
> In the three parameter version of this code, it looks like aParam1
> should be used instead of using aParam2 twice. Also, in the two
> parameter version of the code, it looks like _1 should be used instead
> of -1. I haven't had a chance to investigate the possible symptoms of
> these errors or how to text the appropriate fix.
The answer is that the code in question does not appear to be used. Only
the version that doesn't take any parameters (not shown above) is used
in the filter module.
There are also copies of this code in the oox module that appear to be
correct.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org