Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • T Trilinos
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 936
    • Issues 936
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 22
    • Merge requests 22
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • James Willenbring
  • Trilinos
  • Issues
  • #5091

Closed
Open
Created May 03, 2019 by James Willenbring@jmwilleMaintainer

Xpetra no longer compiles with clang

Created by: etphipp

With latest develop sources I am not getting compiler errors in Xpetra when building with clang:

/home/etphipp/Trilinos/Trilinos/packages/xpetra/src/Headers/Xpetra_UseShortNamesScalar.hpp:164:73: error: 
      member 'TpetraVector' has the same name as its class
typedef Xpetra::TpetraVector<Scalar, LocalOrdinal, GlobalOrdinal, Node> TpetraVe...
                                                                        ^
In file included from /home/etphipp/Trilinos/build/opt_mpi_openmp_clang/packages/xpetra/src/Utils/ExplicitInstantiation/Xpetra_TpetraVector.cpp:55:
/home/etphipp/Trilinos/Trilinos/packages/xpetra/src/Vector/Xpetra_TpetraVector_def.hpp:365:13: error: 
      destructor cannot be declared using a typedef
      'Xpetra::TpetraVector<type-parameter-0-0, int, long long,
      Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::OpenMP, Kokkos::HostSpace>
      >::TpetraVector' (aka 'TpetraVector<Scalar, int, long long,
      KokkosDeviceWrapperNode<Kokkos::OpenMP> >') of the class name
    virtual ~TpetraVector() { }

This occurs with both clang 7.0.1 and 4.0.1, which are the latest versions in the SEMS environment.

I guess it doesn't like using a typedef for the same name as the class. However I thought Xpetra has been doing this for a while, and I have been building with clang for many months now, so it is unclear to me why this issue is cropping up now or for just TpetraVector.

Assignee
Assign to
Time tracking