[Dune] [Dune-Commit] dune-common r7040 - in trunk/dune/common:	. test
    Martin Nolte 
    nolte at mathematik.uni-freiburg.de
       
    Thu Oct 18 00:05:22 CEST 2012
    
    
  
Hi Christian,
as far as I know, explicit cast operators do not conform to C++03. Have you 
tried an older gcc version (e.g. 4.1)?
Best,
Martin
On 10/17/2012 11:08 PM, christi at dune-project.org wrote:
> Author: christi
> Date: 2012-10-17 23:08:39 +0200 (Wed, 17 Oct 2012)
> New Revision: 7040
>
> Modified:
>     trunk/dune/common/shared_ptr.hh
>     trunk/dune/common/test/shared_ptrtest.cc
> Log:
> [shared_ptr]
> test initialization from nullptr
> fix bool cast of Dune implementation
>
> Modified: trunk/dune/common/shared_ptr.hh
> ===================================================================
> --- trunk/dune/common/shared_ptr.hh	2012-10-17 17:06:23 UTC (rev 7039)
> +++ trunk/dune/common/shared_ptr.hh	2012-10-17 21:08:39 UTC (rev 7040)
> @@ -110,6 +110,11 @@
>               return rep_==0 ? 0 : rep_->rep_;
>           }
>
> +        /** \brief Checks if shared_ptr manages an object, i.e. whether get() != 0. */
> +        explicit operator bool() const {
> +            return rep_ != 0&&  rep_->rep_ != 0;
> +        }
> +
>           /** \brief Swap content of this shared_ptr and another */
>           inline void swap(shared_ptr&  other);
>
>
> Modified: trunk/dune/common/test/shared_ptrtest.cc
> ===================================================================
> --- trunk/dune/common/test/shared_ptrtest.cc	2012-10-17 17:06:23 UTC (rev 7039)
> +++ trunk/dune/common/test/shared_ptrtest.cc	2012-10-17 21:08:39 UTC (rev 7040)
> @@ -128,6 +128,11 @@
>           shared_ptr<double>  bar(new double(43.0));
>           assert(bar);
>
> +        // test constructor from nullptr
> +        shared_ptr<double>  bar_null(nullptr);
> +        assert(!bar_null);
> +        assert(!bar_null.get());
> +
>           // test reset()
>           bar.reset();
>           assert(!bar);
>
>
> _______________________________________________
> Dune-Commit mailing list
> Dune-Commit at dune-project.org
> http://lists.dune-project.org/mailman/listinfo/dune-commit
-- 
Dr. Martin Nolte <nolte at mathematik.uni-freiburg.de>
Universität Freiburg                                   phone: +49-761-203-5630
Abteilung für angewandte Mathematik                    fax:   +49-761-203-5632
Hermann-Herder-Straße 10
79104 Freiburg, Germany
    
    
More information about the Dune
mailing list