libstdc++: Reduce Doxygen output for PDF

Including the header source code in the doxygen-generated PDF file makes
it too large, and causes pdflatex to run out of memory. If we only set
SOURCE_BROWSER=YES for the HTML docs then we won't include the sources
in the PDF file.

There are several macros defined for std::valarray that are only used to
generate repetitive code and then #undef'd. Those aren't useful in the
doxygen docs, especially the ones that reuse the same name in different
files. Omitting them avoids warnings about duplicate labels in the
refman.tex file.

libstdc++-v3/ChangeLog:

	* doc/doxygen/user.cfg.in (SOURCE_BROWSER): Only set to YES for
	HTML docs.
	* include/bits/gslice_array.h (_DEFINE_VALARRAY_OPERATOR): Omit
	from doxygen docs.
	* include/bits/indirect_array.h (_DEFINE_VALARRAY_OPERATOR):
	Likewise.
	* include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR):
	Likewise.
	* include/bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR):
	Likewise.
	* include/std/valarray (_DEFINE_VALARRAY_UNARY_OPERATOR)
	(_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT)
	(_DEFINE_VALARRAY_EXPR_AUGMENTED_ASSIGNMENT)
	(_DEFINE_BINARY_OPERATOR): Likewise.
This commit is contained in:
Jonathan Wakely 2023-04-26 12:27:59 +01:00
parent afcf2b09b8
commit afa69618d1
6 changed files with 11 additions and 1 deletions

View file

@ -1217,7 +1217,7 @@ USE_MDFILE_AS_MAINPAGE =
# also VERBATIM_HEADERS is set to NO.
# The default value is: NO.
SOURCE_BROWSER = YES
SOURCE_BROWSER = @do_html@
# Setting the INLINE_SOURCES tag to YES will include the body of functions,
# classes and enums directly into the documentation.

View file

@ -183,6 +183,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_Array<size_t>(_M_index));
}
/// @cond undocumented
#undef _DEFINE_VALARRAY_OPERATOR
#define _DEFINE_VALARRAY_OPERATOR(_Op, _Name) \
template<typename _Tp> \
@ -214,6 +215,7 @@ _DEFINE_VALARRAY_OPERATOR(<<, __shift_left)
_DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
#undef _DEFINE_VALARRAY_OPERATOR
/// @endcond
/// @} group numeric_arrays

View file

@ -174,6 +174,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
indirect_array<_Tp>::operator=(const _Expr<_Dom, _Tp>& __e) const
{ std::__valarray_copy(__e, _M_sz, _M_array, _M_index); }
/// @cond undocumented
#undef _DEFINE_VALARRAY_OPERATOR
#define _DEFINE_VALARRAY_OPERATOR(_Op, _Name) \
template<typename _Tp> \
@ -203,6 +204,7 @@ _DEFINE_VALARRAY_OPERATOR(<<, __shift_left)
_DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
#undef _DEFINE_VALARRAY_OPERATOR
/// @endcond
/// @} group numeric_arrays

View file

@ -181,6 +181,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::__valarray_copy(__e, __e.size(), _M_array, _M_mask);
}
/// @cond undocumented
#undef _DEFINE_VALARRAY_OPERATOR
#define _DEFINE_VALARRAY_OPERATOR(_Op, _Name) \
template<typename _Tp> \
@ -213,6 +214,7 @@ _DEFINE_VALARRAY_OPERATOR(<<, __shift_left)
_DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
#undef _DEFINE_VALARRAY_OPERATOR
/// @endcond
/// @} group numeric_arrays

View file

@ -245,6 +245,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
slice_array<_Tp>::operator=(const _Expr<_Dom,_Tp>& __e) const
{ std::__valarray_copy(__e, _M_sz, _M_array, _M_stride); }
/// @cond undocumented
#undef _DEFINE_VALARRAY_OPERATOR
#define _DEFINE_VALARRAY_OPERATOR(_Op,_Name) \
template<typename _Tp> \
@ -275,6 +276,7 @@ _DEFINE_VALARRAY_OPERATOR(<<, __shift_left)
_DEFINE_VALARRAY_OPERATOR(>>, __shift_right)
#undef _DEFINE_VALARRAY_OPERATOR
/// @endcond
/// @} group numeric_arrays

View file

@ -1080,6 +1080,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return _Expr<_Closure, _Tp>(_Closure(*this, __func));
}
/// @cond undocumented
#define _DEFINE_VALARRAY_UNARY_OPERATOR(_Op, _Name) \
template<typename _Tp> \
inline typename valarray<_Tp>::template _UnaryOp<_Name>::_Rt \
@ -1206,6 +1207,7 @@ _DEFINE_BINARY_OPERATOR(<=, __less_equal)
_DEFINE_BINARY_OPERATOR(>=, __greater_equal)
#undef _DEFINE_BINARY_OPERATOR
/// @endcond
#if __cplusplus >= 201103L
/**