[IBM XLC++] many warnings 1500-029: subprogram could not be inlined
-------------------------------------------------------------------
Key: STDCXX-894
URL: https://issues.apache.org/jira/browse/STDCXX-894
Project: C++ Standard Library
Issue Type: Bug
Components: Tests
Affects Versions: 4.2.0
Reporter: Martin Sebor
Priority: Minor
Fix For: 4.2.2
When compiled with IBM XLC++ with optimization enabled, many tests produce
warning 1500-029: subprogram could not be inlined. Some of these warnings are
issued for tests that explicitly instantiate algorithms on contrived
user-defined types to detect incorrect assumptions made in the tests about the
types they are required to operate on. The warnings could safely be suppressed
in these cases.
In other cases, these warnings may indicate inefficiencies that should be
investigated and corrected.
{noformat}
xlCcore_r -c -I$(TOPDIR)/include/ansi -I$(TOPDIR)/include
-I$(BUILDDIR)/include -I$(TOPDIR)/tests/include -O
-qtemplateregistry=25.equal.ti $(TOPDIR)/tests/algorithms/25.equal.cpp
1500-029: (W) WARNING: subprogram
std::mismatch<BidirIter<UserClass>,BidirIter<UserClass>,std::equal_to<UserClass>
>(BidirIter<UserClass>, BidirIter<UserClass>, BidirIter<UserClass>,
equal_to<UserClass>) could not be inlined into
std::equal<BidirIter<UserClass>,BidirIter<UserClass>,std::equal_to<UserClass>
>(BidirIter<UserClass>, BidirIter<UserClass>, BidirIter<UserClass>,
equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<BidirIter<UserClass>,RandomAccessIter<UserClass>,std::equal_to<UserClass>
>(BidirIter<UserClass>, BidirIter<UserClass>, RandomAccessIter<UserClass>,
equal_to<UserClass>) could not be inlined into
std::equal<BidirIter<UserClass>,RandomAccessIter<UserClass>,std::equal_to<UserClass>
>(BidirIter<UserClass>, BidirIter<UserClass>, RandomAccessIter<UserClass>,
equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<FwdIter<UserClass>,BidirIter<UserClass>,std::equal_to<UserClass>
>(FwdIter<UserClass>, FwdIter<UserClass>, BidirIter<UserClass>,
equal_to<UserClass>) could not be inlined into
std::equal<FwdIter<UserClass>,BidirIter<UserClass>,std::equal_to<UserClass>
>(FwdIter<UserClass>, FwdIter<UserClass>, BidirIter<UserClass>,
equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<InputIter<UserClass>,RandomAccessIter<UserClass>,std::equal_to<UserClass>
>(InputIter<UserClass>, InputIter<UserClass>, RandomAccessIter<UserClass>,
equal_to<UserClass>) could not be inlined into
std::equal<InputIter<UserClass>,RandomAccessIter<UserClass>,std::equal_to<UserClass>
>(InputIter<UserClass>, InputIter<UserClass>, RandomAccessIter<UserClass>,
equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<FwdIter<UserClass>,InputIter<UserClass>,std::equal_to<UserClass>
>(FwdIter<UserClass>, FwdIter<UserClass>, InputIter<UserClass>,
equal_to<UserClass>) could not be inlined into
std::equal<FwdIter<UserClass>,InputIter<UserClass>,std::equal_to<UserClass>
>(FwdIter<UserClass>, FwdIter<UserClass>, InputIter<UserClass>,
equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<FwdIter<UserClass>,FwdIter<UserClass>,std::equal_to<UserClass>
>(FwdIter<UserClass>, FwdIter<UserClass>, FwdIter<UserClass>,
equal_to<UserClass>) could not be inlined into
std::equal<FwdIter<UserClass>,FwdIter<UserClass>,std::equal_to<UserClass>
>(FwdIter<UserClass>, FwdIter<UserClass>, FwdIter<UserClass>,
equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<RandomAccessIter<UserClass>,BidirIter<UserClass>,std::equal_to<UserClass>
>(RandomAccessIter<UserClass>, RandomAccessIter<UserClass>,
BidirIter<UserClass>, equal_to<UserClass>) could not be inlined into
std::equal<RandomAccessIter<UserClass>,BidirIter<UserClass>,std::equal_to<UserClass>
>(RandomAccessIter<UserClass>, RandomAccessIter<UserClass>,
BidirIter<UserClass>, equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<BidirIter<UserClass>,InputIter<UserClass>,std::equal_to<UserClass>
>(BidirIter<UserClass>, BidirIter<UserClass>, InputIter<UserClass>,
equal_to<UserClass>) could not be inlined into
std::equal<BidirIter<UserClass>,InputIter<UserClass>,std::equal_to<UserClass>
>(BidirIter<UserClass>, BidirIter<UserClass>, InputIter<UserClass>,
equal_to<UserClass>).
1500-029: (W) WARNING: subprogram
std::mismatch<RandomAccessIter<UserClass>,RandomAccessIter<UserClass>,std::equal_to<UserClass>
>(RandomAccessIter<UserClass>, RandomAccessIter<UserClass>,
RandomAccessIter<UserClass>, equal_to<UserClass>) could not be inlined into
std::equal<RandomAccessIter<UserClass>,RandomAccessIter<UserClass>,std::equal_to<UserClass>
>(RandomAccessIter<UserClass>, RandomAccessIter<UserClass>,
RandomAccessIter<UserClass>, equal_to<UserClass>).
1501-201: (W) Maximum number of common component diagnostics, 10 has been
exceeded.
{noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.