View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0013233VTK(No Category)public2012-06-10 08:082013-06-05 16:21
ReporterAlan Smithee 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version6.0.0 
Summary0013233: enum/define conflict in vtkImplicitBoolean.h and vtkBooleanOperationPolyDataFilter.h
DescriptionI am using vtk 5.10.0 and have to use vtkImplicitBoolean.h and vtkBooleanOperationPolyDataFilter.h at the same time. There was a commit which changes the operation type names to "VTK_UNION", "VTK_INTERSECTION" and "VTK_DIFFERENCE":
http://vtk.org/gitweb?p=VTK.git;a=commitdiff;h=d856f10a103abd1209c5be3f4939fe9364b6afc8 [^]

unfortunately, due to this change the define lines in vtkImplicitBoolean.h become obsolete and are in conflict.

#define VTK_UNION 0
#define VTK_INTERSECTION 1
#define VTK_DIFFERENCE 2
#define VTK_UNION_OF_MAGNITUDES 3

just including in the wrong order like this:

#include <vtkImplicitBoolean.h>
#include <vtkBooleanOperationPolyDataFilter.h>

leads to the following compile error:

/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:55:5: error: expected identifier before numeric constant
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:55:5: error: expected '}' before numeric constant
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:55:5: error: expected unqualified-id before numeric constant
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void SetOperation(int)':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:62:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'int GetOperation()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void SetOperationToUnion()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:65:5: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void SetOperationToIntersection()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:67:5: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void SetOperationToDifference()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:69:5: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void SetReorientDifferenceCells(int)':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:74:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'int GetReorientDifferenceCells()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:76:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void ReorientDifferenceCellsOn()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:76:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:76:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void ReorientDifferenceCellsOff()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:76:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'void SetTolerance(double)':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:81:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: 'virtual' outside class declaration
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'double GetTolerance()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: error: invalid use of 'this' in non-member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: At global scope:
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:84:1: error: expected unqualified-id before 'protected'
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:86:39: error: expected constructor, destructor, or type conversion before ';' token
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:96:1: error: expected unqualified-id before 'private'
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:98:58: error: 'void operator=(const vtkBooleanOperationPolyDataFilter&)' must be a nonstatic member function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:123:1: error: expected declaration before '}' token
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'double GetTolerance()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:82:3: warning: control reaches end of non-void function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'int GetReorientDifferenceCells()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:75:3: warning: control reaches end of non-void function
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h: In function 'int GetOperation()':
/usr/include/vtk-5.10/vtkBooleanOperationPolyDataFilter.h:63:3: warning: control reaches end of non-void function
make: *** [main.o] Error 1
TagsNo tags attached.
ProjectTBD
Typeincorrect functionality
Attached Files

 Relationships

  Notes
(0028680)
Bill Lorensen (developer)
2012-06-11 10:36

The fix went under gerrit review here:
http://review.source.kitware.com/#/c/6143/ [^]

and was merged into VTK6.

 Issue History
Date Modified Username Field Change
2012-06-10 08:08 Alan Smithee New Issue
2012-06-10 08:57 Bill Lorensen Reproducibility have not tried => always
2012-06-10 08:57 Bill Lorensen Status backlog => todo
2012-06-11 10:36 Bill Lorensen Note Added: 0028680
2012-06-11 10:36 Bill Lorensen Resolution open => fixed
2013-06-05 16:18 Jean-Christophe Fillion-Robin Assigned To => Jean-Christophe Fillion-Robin
2013-06-05 16:18 Jean-Christophe Fillion-Robin Status todo => active development
2013-06-05 16:18 Jean-Christophe Fillion-Robin Fixed in Version => 6.0.0
2013-06-05 16:19 Jean-Christophe Fillion-Robin Resolution fixed => open
2013-06-05 16:20 Jean-Christophe Fillion-Robin Fixed in Version 6.0.0 =>
2013-06-05 16:20 Jean-Christophe Fillion-Robin Status active development => gatekeeper review
2013-06-05 16:20 Jean-Christophe Fillion-Robin Resolution open => fixed
2013-06-05 16:20 Jean-Christophe Fillion-Robin Status gatekeeper review => customer review
2013-06-05 16:20 Jean-Christophe Fillion-Robin Status customer review => closed
2013-06-05 16:21 Jean-Christophe Fillion-Robin Assigned To Jean-Christophe Fillion-Robin =>
2013-06-05 16:21 Jean-Christophe Fillion-Robin Fixed in Version => 6.0.0


Copyright © 2000 - 2018 MantisBT Team