eigen/Eigen
Antonio Sanchez a31effc3bc Add invoke_result and eliminate result_of warnings for C++17+.
The `std::result_of` meta struct is deprecated in C++17 and removed
in C++20. It was still slipping through due to a faulty definition of
`EIGEN_HAS_STD_RESULT_OF`.

Added a new macro `EIGEN_HAS_STD_INVOKE_RESULT` and
`Eigen::internal::invoke_result` implementation with fallback for
pre C++17.

Replaces the `result_of` definition with one based on `std::invoke_result`
for C++17 and higher.

For completeness, added nullary op support for c++03.

Fixes #1850.
2021-02-24 21:36:14 +00:00
..
src Add invoke_result and eliminate result_of warnings for C++17+. 2021-02-24 21:36:14 +00:00
Cholesky Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
CholmodSupport Update link to suitesparse. 2016-01-27 22:48:40 +01:00
Core Fix excessive GEBP register spilling for 32-bit NEON. 2021-02-03 09:01:48 -08:00
Dense Add newline at the end of Dense. 2010-07-23 19:00:02 +02:00
Eigen Sparse is stable now, so Eigen/Eigen should include Sparse 2013-10-02 23:31:59 +02:00
Eigenvalues Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
Geometry Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
Householder Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
IterativeLinearSolvers Add missing licence header to some top header files 2015-10-26 11:46:05 +01:00
Jacobi Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
KLUSupport Move KLU support to official 2017-11-10 14:11:22 +01:00
LU Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
MetisSupport Add missing licence header to some top header files 2015-10-26 11:46:05 +01:00
OrderingMethods Remove EIGEN_MPL2_ONLY guards around code re-licensed from LGPL to MPL2 in 2ca1e73239 2019-03-05 10:24:54 -08:00
PardisoSupport Extend CUDA support to matrix inversion and selfadjointeigensolver 2018-06-11 18:33:24 +02:00
PaStiXSupport clarify Pastix requirements 2017-11-27 22:11:57 +01:00
QR Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
QtAlignedMalloc Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
Sparse Remove EIGEN_MPL2_ONLY guards around code re-licensed from LGPL to MPL2 in 2ca1e73239 2019-03-05 10:24:54 -08:00
SparseCholesky Remove EIGEN_MPL2_ONLY guards around code re-licensed from LGPL to MPL2 in 2ca1e73239 2019-03-05 10:24:54 -08:00
SparseCore bug #1101: typo 2015-10-30 12:02:52 +01:00
SparseLU Fix numerous shadow-warnings for GCC<=4.8 2018-08-28 18:32:39 +02:00
SparseQR Old gcc versions have problems with recursive #pragma GCC diagnostic push/pop 2018-08-28 11:44:15 +02:00
SPQRSupport Update link to suitesparse. 2016-01-27 22:48:40 +01:00
StdDeque bug #1389: MSVC's std containers do not properly align in 64 bits mode if the requested alignment is larger than 16 bytes (e.g., with AVX) 2017-02-03 15:22:35 +01:00
StdList bug #1389: MSVC's std containers do not properly align in 64 bits mode if the requested alignment is larger than 16 bytes (e.g., with AVX) 2017-02-03 15:22:35 +01:00
StdVector bug #1389: MSVC's std containers do not properly align in 64 bits mode if the requested alignment is larger than 16 bytes (e.g., with AVX) 2017-02-03 15:22:35 +01:00
SuperLUSupport bug #1119: Adjust call to ?gssvx for SuperLU 5 2016-07-10 02:29:57 +02:00
SVD Remove vim specific comments to recognoize correct file-type. 2021-02-09 09:13:09 +01:00
UmfPackSupport Update link to suitesparse. 2016-01-27 22:48:40 +01:00