View Issue Details

IDProjectCategoryView StatusLast Update
0013258Open CASCADEOCCT:Foundation Classespublic2012-10-26 18:39
ReporteragvAssigned Topdn 
PrioritynormalSeverityfeature 
Status closedResolutionfixed 
OSAll 
Summary0013258: Improvements in FDC (64-bit warnings, etc.)
DescriptionThe main goal of this patch is to eliminate the 64-bit issues that are indicated
in Visual C++ compilations when the following parameters are set (I used VC++
8.0, similar results can be obtained in VC++ 7.1):

  - Detect64BitPortabilityProblems="true" (equivalent switch /Wp64)
  - Define _CRT_SECURE_NO_DEPRECATE symbol

See the IFMT record 199 for the detailed description.

Other improvements:
  - Additional functionality in TColStd_PackedMapOfInteger
  - Additional functionality in Bnd_B3x, Bnd_B2x
  - Internal improvements in classes Precision, gp_GTrsf.

I joined these changes in one BT record to facilitate testing and certification.
Additional information
and documentation updates
Documentation remark, added by ABV 2006-11-21 16:51:36:

New features:
New primitive type added: Standard_Size, typedefed to size_t
Improvements:
Improve the 64-bit portability of Foundation Classes. The three toolkits
included in the Foundation Classes (Tkernel, TKMath, TKAdvTools) component are
improved to exclude 64-bit compilation issues. These issues are reported by
Microsoft Visual C++ compiler version 7.x or 8.x with the compiler-switch
/Wp64. The common sources of problems:

  - treatment of size_t typed parameter of operator new() as Standard_Integer
    in OCC memory manager (method Standard::Allocate())
  - conversion between integer type (Standard_Integer or long) and a pointer
    type
  - conversion of a result of a CRT or WindowsAPI function (strlen(), time(),
    CreateFile(), etc.) to Standard_Integer type.

As part of this solution, the new primitive type was created: Standard_Size
defined as "typedef size_t". It is used for the parameter of methods
Standard::Allocate() and Standard::Reallocate(), insead of the previous
Standard_Integer. This type is also used in other classes (e.g., OSD_FileNode)
to store integer values that may be 8-byte of size.
TagsNo tags attached.
Test case number

Attached Files

  • occ_13258.tar.gz (126,659 bytes)
  • occ_13258_v2.tar.gz (120,237 bytes)
  • occ_13258_v3.tar.gz (121,561 bytes)
  • occ_13258_v4.tar.gz (122,912 bytes)
  • Standard_MMgrOpt.cxx.gz (5,390 bytes)
  • occ_13258_v5.tar.gz (123,013 bytes)
  • OSD_signal_WNT.cxx.gz (5,027 bytes)
  • OCC13258.description.gz (2,056 bytes)
  • occ13258_patch6.tar.gz (7,794 bytes)
  • occ_13258_v7.tar.gz (125,512 bytes)
  • AddFix13258.tar.gz (9,611 bytes)
  • occ13258-abv-v9.tar.gz (118,735 bytes)
  • occ13258-abv-v10.tar.gz (121,067 bytes)
  • occ13258-abv-v11.tar.gz (82,886 bytes)

Relationships

related to 0013051 closedpdn Open CASCADE Using nonexistent objects in Standard_ForMapOfTypes class 
related to 0013962 closedgka Open CASCADE Exception when drawing face without pcurves 

Activities

2006-08-22 20:39

 

occ_13258.tar.gz (126,659 bytes)

2006-08-24 11:46

 

occ_13258_v2.tar.gz (120,237 bytes)

2006-08-25 07:51

 

occ_13258_v3.tar.gz (121,561 bytes)

2006-08-25 09:07

 

occ_13258_v4.tar.gz (122,912 bytes)

2006-08-25 13:00

 

Standard_MMgrOpt.cxx.gz (5,390 bytes)

2006-08-25 13:47

 

occ_13258_v5.tar.gz (123,013 bytes)

2006-08-25 14:25

 

OSD_signal_WNT.cxx.gz (5,027 bytes)

2006-08-25 19:53

 

OCC13258.description.gz (2,056 bytes)

2006-08-28 10:21

 

occ13258_patch6.tar.gz (7,794 bytes)

2006-10-12 10:20

 

occ_13258_v7.tar.gz (125,512 bytes)

2006-11-16 16:17

 

AddFix13258.tar.gz (9,611 bytes)

2006-11-21 16:52

 

occ13258-abv-v9.tar.gz (118,735 bytes)

2007-02-04 17:13

 

occ13258-abv-v10.tar.gz (121,067 bytes)

2007-08-01 10:08

 

occ13258-abv-v11.tar.gz (82,886 bytes)

abv

2012-10-26 18:39

manager   ~0021974

The changes proposed in this issue have either been integrated during last years or are considered obsolete now due to changes in OCCT

Issue History

Date Modified Username Field Change
2006-08-23 08:49 bugmaster Assigned To bugmaster => agv
2006-08-23 08:49 bugmaster Status new => assigned
2006-08-24 14:09 agv OtherBugsDependingOnThis => 13051
2006-08-24 14:09 agv Status assigned => resolved
2006-08-25 19:20 mkv Status resolved => tested
2006-09-06 13:04 bugmaster Status tested => assigned
2006-10-24 17:40 agv Assigned To agv => gka
2006-11-16 18:18 gka Status assigned => resolved
2006-11-21 16:53 abv OtherBugsDependingOnThis => 13962
2006-11-21 18:59 abv CC => pdn
2006-11-21 19:02 abv CC => gka, agv, abv
2006-11-22 18:50 bugmaster Assigned To gka => abv
2006-11-22 18:50 bugmaster Status resolved => assigned
2007-02-04 18:25 abv OtherBugsDependingOnThis => 10096
2007-02-04 19:21 abv Status assigned => resolved
2007-08-01 11:04 bugmaster Status resolved => assigned
2007-08-01 11:18 bugmaster CC => apv
2007-08-01 11:18 bugmaster Status assigned => resolved
2007-08-03 13:15 apv CC => amv
2007-08-07 11:10 bugmaster Assigned To abv => pdn
2007-08-07 11:10 bugmaster Status resolved => assigned
2011-08-02 11:23 bugmaster Category OCCT:FDC => OCCT:Foundation Classes
2012-01-13 18:01 atp Fixed in Version EMPTY =>
2012-01-13 18:01 atp Description Updated
2012-01-13 18:01 atp Additional Information Updated
2012-10-26 18:39 abv Note Added: 0021974
2012-10-26 18:39 abv Status assigned => closed
2012-10-26 18:39 abv Resolution open => fixed