Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • ParaView ParaView
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,842
    • Issues 1,842
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 89
    • Merge requests 89
  • 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
  • ParaView
  • ParaViewParaView
  • Issues
  • #17407

Closed
Open
Created May 03, 2017 by Joachim Pouderoux@jpouderouxContributor

ParaView master does not compile anymore with VTK_ALL_NEW_OBJECT_FACTORY=TRUE

ParaView does not compile anymore since a recent change !1573 (merged)

Here are the compilation errors:


> In file included from /home/joachim/dev/paraview2/ParaViewCore/ServerManager/Rendering/vtkPVComparativeView.cxx:22:0:
> /home/joachim/dev/paraview2/ParaViewCore/ServerManager/Rendering/vtkPVComparativeView.cxx: In static member function ‘static vtkPVComparativeViewNS::vtkCloningVectorOfRepresentations* vtkPVComparativeViewNS::vtkCloningVectorOfRepresentations::New()’:
> /home/joachim/dev/paraview2/VTK/Common/Core/vtkObjectFactory.h:345:39: error: invalid static_cast from type ‘vtkObject*’ to type ‘vtkPVComparativeViewNS::vtkCloningVectorOfRepresentations*’
>      return static_cast<thisClass*>(ret); \
>                                        ^
>     /home/joachim/dev/paraview2/VTK/Common/Core/vtkObjectFactory.h:366:3: note: in expansion of macro ‘VTK_OBJECT_FACTORY_NEW_BODY’
>    VTK_OBJECT_FACTORY_NEW_BODY(thisClass)
>    ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>     /home/joachim/dev/paraview2/ParaViewCore/ServerManager/Rendering/vtkPVComparativeView.cxx:395:5: note: in expansion of macro ‘VTK_STANDARD_NEW_BODY’
>      VTK_STANDARD_NEW_BODY(vtkCloningVectorOfRepresentations);
>      ^~~~~~~~~~~~~~~~~~~~~
>     /home/joachim/dev/paraview2/ParaViewCore/ServerManager/Rendering/vtkPVComparativeView.cxx: In static member function ‘static vtkPVComparativeViewNS::vtkCloningVectorOfViews* vtkPVComparativeViewNS::vtkCloningVectorOfViews::New()’:
> /home/joachim/dev/paraview2/VTK/Common/Core/vtkObjectFactory.h:345:39: error: invalid static_cast from type ‘vtkObject*’ to type ‘vtkPVComparativeViewNS::vtkCloningVectorOfViews*’
>      return static_cast<thisClass*>(ret); \
>                                        ^
>     /home/joachim/dev/paraview2/VTK/Common/Core/vtkObjectFactory.h:366:3: note: in expansion of macro ‘VTK_OBJECT_FACTORY_NEW_BODY’
>    VTK_OBJECT_FACTORY_NEW_BODY(thisClass)
>    ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>     /home/joachim/dev/paraview2/ParaViewCore/ServerManager/Rendering/vtkPVComparativeView.cxx:450:43: note: in expansion of macro ‘VTK_STANDARD_NEW_BODY’
>    static vtkCloningVectorOfViews* New() { VTK_STANDARD_NEW_BODY(vtkCloningVectorOfViews); }

Problem is because with VTK_ALL_NEW_OBJECT_FACTORY=TRUE, vtkObjectFactory.h:364 try to build the object vtkCloningVector as a vtkObject but it is declared only as a vtkObjectBase.

Declaring vtkCloningVector as a vtkObject instead seems to solve the issue.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking