View Issue Details

IDProjectCategoryView StatusLast Update
0014788Open CASCADEOCCT:Configurationpublic2011-09-13 10:23
ReporterabvAssigned Tovtn 
PrioritynormalSeveritytrivial 
Status closedResolutionfixed 
OSAll 
Fixed in Version6.2.0 
Summary0014788: Preprocessor macro is needed to distinguish 64- vs 32-bit compilation mode at compile time
DescriptionCurrently OCC build system (at least, WOK) does not provide any preprocessor
macro that would allow to know, at compile time, whether the code is compiled
for 64- or 32-bit platform.

This knowledge is necessary for platform-specific code such as selection of
value of UndefinedHandleAddress in Handle_Standard_Transient.hxx, memory block
allocation granularity in Standard_MMgrOpt.cxx etc.

(Note that sizeof() cannot be used in preprocessor directives.)

As a starting point in solving that problem, the fix on OCC10096 and OCC13258
uses the new macro "_OCC64" which is:

- defined in Standard.hxx (unless defined previously) if either _WIN64 or
DECOSF is defined

- used in Handle_Standard_Transient.hxx and Handle_Standard_Persistent.hxx to
define appropriate value for the UndefinedHandleAddress

The next point is that OCC build procedures should define that macro when
building on any 64-bit platform
TagsNo tags attached.
Test case number

Activities

abv

2011-09-13 10:07

manager   ~0018110

The macro have been implemented long time ago, please check and close the issue with setting relevant OCCT version

Issue History

Date Modified Username Field Change
2007-02-05 15:53 bugmaster Assigned To bugmaster => apv
2007-02-05 15:53 bugmaster Status new => assigned
2007-02-14 15:41 bugmaster Assigned To apv => vtn
2011-08-02 11:15 bugmaster Category OCCT:DEVENV => OCCT:Development Environment
2011-09-13 10:07 abv Note Added: 0018110
2011-09-13 10:23 bugmaster Status assigned => closed
2011-09-13 10:23 bugmaster Resolution open => fixed
2014-01-11 11:58 abv Category OCCT:Development Environment => OCCT:Configuration