From ab8abefc78614e2d0de2c96acde646520e6612f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carsten=20Gr=C3=A4ser?= <graeser@mi.fu-berlin.de> Date: Mon, 11 Mar 2013 11:37:51 +0000 Subject: [PATCH] Disable the constructor from anything It is unclear where and if it is needed and it's very dangerous for the following reason: Suppose the that you have some class class C { C(const NullOperator<A>& a): a_(a) {} const NullOperator<A>& a_; }; and make the not so unlikely error to call the constructor of C with a NullOperator<B>. Then the code will silently compile but the 'a_' is a reference to an invalid temporary after the constructor call. [[Imported from SVN: r8227]] --- dune/solvers/operators/nulloperator.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dune/solvers/operators/nulloperator.hh b/dune/solvers/operators/nulloperator.hh index 4ab35a4c..b58a1d95 100644 --- a/dune/solvers/operators/nulloperator.hh +++ b/dune/solvers/operators/nulloperator.hh @@ -50,8 +50,8 @@ class NullOperator * * This is here to allow for NullOperator as block_type (this is needed in the constructor of RowDummy) */ - template <class T> - NullOperator(const T& t){} +// template <class T> +// NullOperator(const T& t){} /** \brief Matrix-Vector multiplication * -- GitLab