View Issue Details

IDProjectCategoryView StatusLast Update
0024058Open CASCADEOCCT:Codingpublic2013-12-19 13:56
ReporteromyAssigned Toomy 
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformWindowsOSVC++ 2008 
Product Version6.6.0 
Target Version6.7.0Fixed in Version6.7.0 
Summary0024058: Eliminate compiler warning C4702 in MSVC++ with warning level 4
DescriptionWhen compiling OCCT 6.6.0 with warning level set to 4, MSVC 2008 compiler produces many warnings c4702: unreachable code
TagsNo tags attached.
Test case numberNot needed

Relationships

child of 0023947 closedomy Eliminate trivial compiler warnings in MSVC++ with warning level 4 

Activities

omy

2013-07-05 09:20

developer   ~0024964

Dear abv,
I've eliminated most of simple cases, connected with Warning C4702.
Please, review.

abv

2013-07-09 08:49

manager   ~0024991

Oleg, please rebase on current master.

In BRepTest_CurveCommands.cxx, I believe the right way should be to remove #ifdef DEB retaining di <<... (to get error output).

In ChFi3d_Builder_CnCrn.cxx, you added unnecessary extra indentation inside switch starting at line 913.

For changes in MeshVS_MeshOwner.cxx (where for() cycles featured unconditional break), please check with san what was original intent.

In QABugs_4.cxx: please remove command BUC60606 completely as it does nothing. Check if some test case used that function -- it needs to be fixed. The same for BUC60627.

As a general remark, please try to avoid reformatting lines where no actual changes are made, even if they look ugly. This would facilitate code review a lot.

omy

2013-07-09 17:35

developer   ~0025004

Dear abv,
please, review the fixes I've made.

abv

2013-07-09 17:49

manager   ~0025005

No remarks, please test

apn

2013-07-12 12:17

administrator   ~0025050

Dear BugMaster,

Branch CR24058 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
SHA-1: 70abaa064261b5119ebe446290d1f9a5d5b6bbd1

Number of compiler warnings:

occt component :
Linux: 2 (2 on master)
Windows: 7 (7 on master)

products component :
Linux: 0 (0 on master)
Windows: 63 (63 on master)

Regressions:
No regressions

Improvements:
No improvements

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 365132212 / 365009856
Total CPU difference: 45032.95000000118 / 44730.12000000092

Testing on Windows:
Total MEMORY difference: 424448264 / 425546528
Total CPU difference: 37177.875 / 41692.015625

There are not differences in images found by testdiff.

Related Changesets

occt: master d3f26155

2013-07-12 08:54:01

omy

Details Diff
0024058: Eliminate compiler warning C4702 in MSVC++ with warning level 4

Got rid of most of warnings of C4702 type: unreachable code.
Returned some #ifdef DEB
Fixed tabs formatting
Fixed some mistakes in code
Affected Issues
0024058
mod - src/Adaptor3d/Adaptor3d_IsoCurve.cxx Diff File
mod - src/Adaptor3d/Adaptor3d_SurfaceOfLinearExtrusion.cxx Diff File
mod - src/AIS/AIS_Selection.cxx Diff File
mod - src/APIHeaderSection/APIHeaderSection_EditHeader.cxx Diff File
mod - src/BOPTest/BOPTest_BOPCommands.cxx Diff File
mod - src/BOPTools/BOPTools_AlgoTools_1.cxx Diff File
mod - src/BRepAlgo/BRepAlgo_FaceRestrictor.cxx Diff File
mod - src/BRepFill/BRepFill_Pipe.cxx Diff File
mod - src/BRepGProp/BRepGProp_EdgeTool.cxx Diff File
mod - src/BRepTest/BRepTest_CurveCommands.cxx Diff File
mod - src/BRepTools/BRepTools_NurbsConvertModification.cxx Diff File
mod - src/ChFi2d/ChFi2d_Builder_0.cxx Diff File
mod - src/ChFi3d/ChFi3d_Builder_CnCrn.cxx Diff File
mod - src/ChFi3d/ChFi3d_Builder_SpKP.cxx Diff File
mod - src/DDataStd/DDataStd_DrawDriver.cxx Diff File
mod - src/DPrsStd/DPrsStd_AISPresentationCommands.cxx Diff File
mod - src/Draw/Draw_BasicCommands.cxx Diff File
mod - src/Draw/Draw_Window.cxx Diff File
mod - src/GCPnts/GCPnts_QuasiUniformDeflection.gxx Diff File
mod - src/GCPnts/GCPnts_UniformDeflection.gxx Diff File
mod - src/Geom2dGcc/Geom2dGcc_Circ2d2TanOn.cxx Diff File
mod - src/Geom2dGcc/Geom2dGcc_Circ2d2TanRad.cxx Diff File
mod - src/GeometryTest/GeometryTest_ConstraintCommands.cxx Diff File
mod - src/GeomFill/GeomFill.cxx Diff File
mod - src/IntPatch/IntPatch_LineConstructor.cxx Diff File
mod - src/IntPatch/IntPatch_Polyhedron.cxx Diff File
mod - src/IntSurf/IntSurf_Quadric.cxx Diff File
mod - src/IntTools/IntTools_EdgeFace.cxx Diff File
mod - src/MAT2d/MAT2d_Circuit.cxx Diff File
mod - src/MeshVS/MeshVS_MeshOwner.cxx Diff File
mod - src/MNaming/MNaming_NamingRetrievalDriver.cxx Diff File
mod - src/MNaming/MNaming_NamingRetrievalDriver_1.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_7.cxx Diff File
mod - src/ProjLib/ProjLib_ComputeApproxOnPolarSurface.cxx Diff File
mod - src/QABugs/QABugs_10.cxx Diff File
mod - src/QABugs/QABugs_4.cxx Diff File
mod - src/QANewBRepNaming/QANewBRepNaming_BooleanOperationFeat.cxx Diff File
mod - src/QANewBRepNaming/QANewBRepNaming_Gluing.cxx Diff File
mod - src/QANewModTopOpe/QANewModTopOpe_Glue_wire.cxx Diff File
mod - src/ShapeAnalysis/ShapeAnalysis.cxx Diff File
mod - src/ShapeBuild/ShapeBuild_Edge.cxx Diff File
mod - src/ShapeConstruct/ShapeConstruct_ProjectCurveOnSurface.cxx Diff File
mod - src/ShapeCustom/ShapeCustom_BSplineRestriction.cxx Diff File
mod - src/ShapeFix/ShapeFix_EdgeProjAux.cxx Diff File
mod - src/ShapeFix/ShapeFix_Wireframe.cxx Diff File
mod - src/TNaming/TNaming.cxx Diff File
mod - src/TNaming/TNaming_Localizer.cxx Diff File
mod - src/TNaming/TNaming_Name.cxx Diff File
mod - src/TopOpeBRep/TopOpeBRep_FFDumper.cxx Diff File
mod - src/TopOpeBRep/TopOpeBRep_sort.cxx Diff File
mod - src/TopOpeBRep/TopOpeBRep_traceBOOPNINT.cxx Diff File
mod - src/TopOpeBRepBuild/TopOpeBRepBuild_Builder1.cxx Diff File
mod - src/TopOpeBRepBuild/TopOpeBRepBuild_GTopo.cxx Diff File
mod - src/TopOpeBRepBuild/TopOpeBRepBuild_Tools_1.cxx Diff File
mod - src/TopOpeBRepDS/TopOpeBRepDS.cxx Diff File
mod - src/TopOpeBRepDS/TopOpeBRepDS_BuildTool.cxx Diff File
mod - src/TopOpeBRepDS/TopOpeBRepDS_PointIterator.cxx Diff File
mod - src/TopOpeBRepTool/TopOpeBRepTool_makeTransition.cxx Diff File
mod - src/XSControl/XSControl_Functions.cxx Diff File

Issue History

Date Modified Username Field Change
2013-07-04 10:16 omy New Issue
2013-07-04 10:16 omy Assigned To => omy
2013-07-04 10:16 omy Relationship added child of 0023947
2013-07-04 10:17 omy Status new => assigned
2013-07-04 12:44 omy Summary Eliminate compiler warning C4701 in MSVC++ with warning level 4 => Eliminate compiler warning C4702 in MSVC++ with warning level 4
2013-07-04 12:44 omy Description Updated
2013-07-05 09:20 omy Note Added: 0024964
2013-07-05 09:20 omy Assigned To omy => abv
2013-07-05 09:20 omy Status assigned => resolved
2013-07-09 08:49 abv Note Added: 0024991
2013-07-09 08:49 abv Assigned To abv => omy
2013-07-09 08:49 abv Status resolved => assigned
2013-07-09 17:35 omy Note Added: 0025004
2013-07-09 17:35 omy Assigned To omy => abv
2013-07-09 17:35 omy Status assigned => resolved
2013-07-09 17:49 abv Note Added: 0025005
2013-07-09 17:49 abv Assigned To abv => bugmaster
2013-07-09 17:49 abv Status resolved => reviewed
2013-07-12 12:17 apn Note Added: 0025050
2013-07-12 12:18 apn Test case number => Not needed
2013-07-12 12:18 apn Status reviewed => tested
2013-07-12 18:08 omy Changeset attached => occt master d3f26155
2013-07-12 18:08 omy Assigned To bugmaster => omy
2013-07-12 18:08 omy Status tested => verified
2013-07-12 18:08 omy Resolution open => fixed
2013-12-19 13:53 bugmaster Status verified => closed
2013-12-19 13:56 bugmaster Fixed in Version => 6.7.0
2014-01-11 11:58 abv Category OCCT Release:BUILD => OCCT:Coding