Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
D
dorie
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 31
    • Issues 31
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 9
    • Merge Requests 9
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
  • dorie
  • dorie
  • Issues
  • #28

Closed
Open
Opened Aug 16, 2017 by Lukas Riedel@lriedelOwner

Apple Clang on Mac OS Sierra compiles DUNE, but not DORiE executable

The Apple Clang v8.1.0.8020042 is finally able to compile DUNE. However, compiling the DORiE executable still doesn't work due to errors in the std::shared_ptr implementation.

Here is a backtrace:

/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:3798:7: error: exception specification of overriding function is more
      lax than base version
class __shared_ptr_emplace
      ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:4423:26: note: in instantiation of template class
      'std::__1::__shared_ptr_emplace<Dune::UGGrid<3>, std::__1::allocator<Dune::UGGrid<3> > >' requested here
    ::new(__hold2.get()) _CntrlBlk(__a2, _VSTD::forward<_Args>(__args)...);
                         ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:4787:29: note: in instantiation of function template specialization
      'std::__1::shared_ptr<Dune::UGGrid<3> >::make_shared<>' requested here
    return shared_ptr<_Tp>::make_shared(_VSTD::forward<_Args>(__args)...);
                            ^
/Users/lriedel/dune/dorie/dune/dorie/solver/util_grid_creator.hh:80:19: note: in instantiation of function template specialization
      'std::__1::make_shared<Dune::UGGrid<3>>' requested here
        auto grid = std::make_shared<GridType>();
                         ^
/Users/lriedel/dune/dorie/dune/dorie/dorie.cc:223:30: note: in instantiation of function template specialization
      'Dune::Dorie::build_grid_gmsh<Dune::UGGrid<3> >' requested here
                                auto grid = Dune::Dorie::build_grid_gmsh<Dune::UGGrid<3>>(inifile,helper);
                                                         ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:3724:13: note: overridden virtual function is here
    virtual ~__shared_weak_count();
            ^

If this can be fixed, we could support compiling DORiE with the default Apple Clang.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: dorie/dorie#28