View Issue Details

IDProjectCategoryView StatusLast Update
0026593Open CASCADEOCCT:Codingpublic2016-04-20 15:48
Reporterkgv Assigned Tobugmaster  
PriorityhighSeveritymajor 
Status closedResolutionfixed 
Target Version7.0.0Fixed in Version7.0.0 
Summary0026593: Coding rules - revert compatibility of NCollection_CellFilter constructor with old code
DescriptionLast cosmetic modifications of NCollection_CellFilter has been introduced API changes that even have not been documented:
-  NCollection_CellFilter (Standard_Real theCellSize=0,
-                          const Handle(NCollection_IncAllocator)& theAlloc=0) 
-  {
-    Reset (theCellSize, theAlloc);
-  }
+  NCollection_CellFilter (const Standard_Integer theDim,
+                          const Standard_Real theCellSize = 0,
+                          const Handle(NCollection_IncAllocator)& theAlloc = 0)
+  : myCellSize(0, theDim - 1)

The changed arguments list is dangerous because it makes old code silently compilable with just a minor warning of double->int implicit conversion.

It is better to make old code to work.
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot needed

Relationships

child of 0026395 closedbugmaster Merge clasees NCollection_CellFilter_NDim and NCollection_CellFilter 
child of 0026184 closedbugmaster GeomAPI_ExtremaCurveCurve hangs on parallel b-spline curves 

Activities

msv

2015-08-24 16:05

developer   ~0044553

Alexander, I propose to restore the old constructor, and it should get the dimension from the inspector, as earlier. The new behavior constructor will get dimension from its arguments.

git

2015-08-24 20:17

administrator   ~0044579

Branch CR26593 has been created by aml.

SHA-1: b5ffc4f7fec8a877d57b8916f40d694d694c9ee2


Detailed log of new commits:

Author: aml
Date: Mon Aug 24 19:32:38 2015 +0300

    0026593: Coding rules - revert compatibility of NCollection_CellFilter constructor with old code
    
    Restored old constructor and old behavior where possible.

aml

2015-08-25 09:20

developer   ~0044581

Dear msv,

Proposed solution pushed to CR26593 branches in OCCT and products repositories. Please check current state of CR26593 branches.

msv

2015-08-26 15:54

developer   ~0044669

This fix reverts some changes made by the fix "0026395: Merge clasees NCollection_CellFilter_NDim and NCollection_CellFilter". Why the following file is not reverted as well:

src\Extrema\Extrema_GenExtCC.gxx

git

2015-08-26 16:50

administrator   ~0044676

Branch CR26593 has been updated by aml.

SHA-1: c76b2bbe1aeba00b176ef0d312ff11f790f92021


Detailed log of new commits:

Author: aml
Date: Wed Aug 26 16:48:14 2015 +0300

    Minor correction.

aml

2015-08-26 16:53

developer   ~0044677

Dear msv,

I forgot to add this file into fix. Please check updated branch.

msv

2015-08-26 19:33

developer   ~0044688

Reviewed.

git

2015-08-28 15:51

administrator   ~0044821

Branch CR26593 has been updated forcibly by apv.

SHA-1: cf9c582d935bad86b77a79523c308653215e1320

apv

2015-08-28 15:55

tester   ~0044826

Branches CR26593 (from occt and products repositories) have been rebased on the current master

apv

2015-09-02 14:49

tester   ~0044965

Dear BugMaster,

Branch CR26593 from occt git-repository (and CR26593 from products git-repository) was compiled on Linux and Windows platforms and tested.
SHA-1: cf9c582d935bad86b77a79523c308653215e1320
SHA-1: 453830bbf3de575dbb052a6a9d4a376729e50638

Number of compiler warnings:
occt component:
   Linux: 15 (15 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 39 (39 on master)
   Windows: 0 (0 on master)

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
occt component:
Total MEMORY difference: 91006720 / 91198451 [-0.21%]
Total CPU difference: 17827.679999998993 / 17164.509999999384 [+3.86%]
products component:
Total MEMORY difference: 25237304 / 25226546 [+0.04%]
Total CPU difference: 7384.669999999988 / 7039.5099999999975 [+4.90%]

Testing on Windows:
occt component:
Total MEMORY difference: 57079247 / 57088288 [-0.02%]
Total CPU difference: 16474.111202598862 / 16439.744182298913 [+0.21%]
products component:
Total MEMORY difference: 16224716 / 16228570 [-0.02%]
Total CPU difference: 5360.631162799972 / 5334.079792599963 [+0.50%]

git

2015-09-07 13:50

administrator   ~0045137

Branch CR26593_1 has been created by kgv.

SHA-1: 7c4740f8549d77b45dd3eaf7da3565f793a4fa1e


Detailed log of new commits:

Author: kgv
Date: Mon Sep 7 13:48:23 2015 +0300

    BRepMesh_CircleInspector - fix vc12 compiler error after 0026593

git

2015-10-16 16:08

administrator   ~0046859

Branch CR26593 has been deleted by kgv.

SHA-1: cf9c582d935bad86b77a79523c308653215e1320

git

2015-10-16 16:14

administrator   ~0046884

Branch CR26593_1 has been deleted by kgv.

SHA-1: 7c4740f8549d77b45dd3eaf7da3565f793a4fa1e

Related Changesets

occt: master a7653f4f

2015-09-03 12:05:34

aml


Committer: bugmaster Details Diff
0026593: Coding rules - revert compatibility of NCollection_CellFilter constructor with old code

Restored old constructor and old behavior where possible.

Minor correction.
Affected Issues
0026593
mod - src/BRepBuilderAPI/BRepBuilderAPI_FastSewing.cxx Diff File
mod - src/BRepBuilderAPI/BRepBuilderAPI_Sewing.cxx Diff File
mod - src/BRepMesh/BRepMesh_CircleTool.cxx Diff File
mod - src/BRepMesh/BRepMesh_VertexTool.cxx Diff File
mod - src/Extrema/Extrema_GenExtCC.gxx Diff File
mod - src/NCollection/NCollection_CellFilter.hxx Diff File
mod - src/RWStl/RWStl.cxx Diff File

Issue History

Date Modified Username Field Change
2015-08-24 15:06 kgv New Issue
2015-08-24 15:06 kgv Assigned To => kgv
2015-08-24 15:06 kgv Relationship added child of 0026395
2015-08-24 15:06 kgv Relationship added child of 0026184
2015-08-24 15:07 kgv Assigned To kgv => msv
2015-08-24 15:07 kgv Priority normal => high
2015-08-24 15:07 kgv Status new => assigned
2015-08-24 16:05 msv Note Added: 0044553
2015-08-24 16:05 msv Assigned To msv => aml
2015-08-24 20:17 git Note Added: 0044579
2015-08-25 09:20 aml Note Added: 0044581
2015-08-25 09:20 aml Assigned To aml => msv
2015-08-25 09:20 aml Status assigned => resolved
2015-08-26 15:54 msv Note Added: 0044669
2015-08-26 15:54 msv Assigned To msv => aml
2015-08-26 15:54 msv Status resolved => assigned
2015-08-26 16:50 git Note Added: 0044676
2015-08-26 16:53 aml Note Added: 0044677
2015-08-26 16:53 aml Assigned To aml => msv
2015-08-26 16:53 aml Status assigned => resolved
2015-08-26 19:33 msv Note Added: 0044688
2015-08-26 19:33 msv Assigned To msv => bugmaster
2015-08-26 19:33 msv Status resolved => reviewed
2015-08-28 14:46 apv Assigned To bugmaster => apv
2015-08-28 15:51 git Note Added: 0044821
2015-08-28 15:55 apv Note Added: 0044826
2015-09-02 14:46 apv Test case number => Not needed
2015-09-02 14:49 apv Note Added: 0044965
2015-09-02 14:49 apv Assigned To apv => bugmaster
2015-09-02 14:49 apv Status reviewed => tested
2015-09-04 13:02 bugmaster Changeset attached => occt master a7653f4f
2015-09-04 13:02 bugmaster Status tested => verified
2015-09-04 13:02 bugmaster Resolution open => fixed
2015-09-07 13:50 git Note Added: 0045137
2015-10-16 16:08 git Note Added: 0046859
2015-10-16 16:14 git Note Added: 0046884
2016-04-20 15:44 aiv Fixed in Version => 7.0.0
2016-04-20 15:48 aiv Status verified => closed