View Issue Details

IDProjectCategoryView StatusLast Update
0024186Open CASCADEOCCT:Codingpublic2013-12-19 13:58
ReporteromyAssigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformWindowsOSVC++ 2010 
Product Version6.6.0 
Target Version6.7.0Fixed in Version6.7.0 
Summary0024186: Eliminate remaining compiler warnings in MSVC++ 2010 64 bit with warning level 4
DescriptionIt is necessary to eliminate the remaining warnings, shown by VC2010 compiler, when 64 bit version is compiling.
TagsNo tags attached.
Test case numberNot needed

Relationships

related to 0023934 closedabv Compiler warnings in MS VC++ 10 

Activities

omy

2013-09-18 16:42

developer   ~0025636

Dear abv,
Please, review the branch CR24186

abv

2013-09-19 06:34

manager   ~0025639

Last edited: 2013-09-19 06:35

Oleg, please separate fix with static assert to other issue -- it is of different nature (not related to 64 bit) and deserves to be made with more care. In particular, please:
- provide more detailed description
- change assert to cause error when condition is false (this is how asserts are designed usually)
- check that assert behaves reasonably when error. Note that this is static assert, it triggers compiler error, thus cerr is not appropriate here
- give more unique name to Static_Assert
- wrap call to assert to macro to avoid explicit template argument when using it in the code. I guess you have tried this with function, but it is unlikely possible here.

The fixes in files *Sample and .gxx are also better to be separated -- they should be treated in context of separate issues (0024172 and 0024167, respectively).

The remaining changes seem Ok, just please make sure to check them thoroughly building both 32- and 64-bit mode

omy

2013-09-19 14:02

developer   ~0025650

Dear abv,
Please, review the updated branch CR24186_1.

abv

2013-09-23 10:03

manager   ~0025694

Reviewed, please test branch CR24186_2.

Note that I have rebased the branch on current master with squash, and made a few corrections, in particular reverted changes in WNT and QANCollection4.cxx to avoid conflict with 0024198 and 0024191.

mkv

2013-09-24 16:56

tester   ~0025713

Dear BugMaster,

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

Number of compiler warnings:

occt component :
Linux: 518 (506 on master) - 15 new warnings in OSD_File.cxx
OSD_File.cxx:108, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:165, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:221, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:308, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:345, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:416, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:451, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:478, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:506, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:539, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:563, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:587, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:672, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:717, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
OSD_File.cxx:783, GNU Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions
http://jenkins-test-02.nnov.opencascade.com:8080/user/mnt/my-views/view/CR24186_2/job/mnt-CR24186_2-master_build_occt_linux/1/warnings15Result/new/package.-165224203/file.572926122/

Windows: 31 (31 on master)

products component :
Linux: 190 (190 on master)
Windows: 287 (287 on master)

Regressions:
http://occt-tests/CR24186-2-master-occt/Debian60-64/bugs/fclasses/bug181_1.html
http://occt-tests/CR24186-2-master-occt/Debian60-64/bugs/fclasses/bug181_2.html
bugs fclasses(002) bug181_1, bug181_2

Improvements:
No improvements

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 365035336 / 366226160
Total CPU difference: 41700.670000001104 / 42280.76000000096

Testing on Windows:
Total MEMORY difference: 427951868 / 428826468
Total CPU difference: 34834.546875 / 47671.921875

There are not differences in images found by testdiff.

abv

2013-09-25 07:11

manager   ~0025720

I have reverted changes in OSD_FileNode and OSD_File, please test

mkv

2013-09-26 12:57

tester   ~0025744

Dear BugMaster,

Branch CR24186_2 (and products from GIT master) was compiled on Linux and Windows platforms and tested.


Number of compiler warnings:

occt component :
Linux: 506 (506 on master)
Windows: 31 (31 on master)

products component :
Linux: 190 (190 on master)
Windows: 287 (287 on master)

Regressions:
No regressions

Improvements:
No improvements

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 365768636 / 366126664
Total CPU difference: 44285.31000000166 / 42280.380000000965

Testing on Windows:
Total MEMORY difference: 429939420 / 428884612
Total CPU difference: 36033.96875 / 48244.46875

There are not differences in images found by testdiff.

Related Changesets

occt: master 7dc9e047

2013-09-26 13:20:52

omy


Committer: bugmaster Details Diff
0024186: Eliminate remaining compiler warnings in MSVC++ 2010 64 bit with warning level 4

Eliminated some warnings of type C4267 (conversion from Type1 to Type2: possible loss of data); size_t to int explicit casts added.
Fixed warning C4267 and 4244 in OSD* files

Change in OSD_FileNode and OSD_File reverted since different handle types are needed on Unix and Windows
Affected Issues
0024186
mod - src/BinLDrivers/BinLDrivers_DocumentSection.cxx Diff File
mod - src/BinObjMgt/BinObjMgt_Persistent.cxx Diff File
mod - src/Graphic3d/Graphic3d_MarkerImage.cxx Diff File
mod - src/IFSelect/IFSelect_Signature.cxx Diff File
mod - src/IGESData/IGESData_GlobalSection.cxx Diff File
mod - src/IGESData/IGESData_IGESReaderData.cxx Diff File
mod - src/IGESData/IGESData_IGESWriter.cxx Diff File
mod - src/IGESFile/structiges.c Diff File
mod - src/Image/Image_Diff.cxx Diff File
mod - src/Interface/Interface_FileReaderData.cxx Diff File
mod - src/Interface/Interface_FloatWriter.cxx Diff File
mod - src/Interface/Interface_LineBuffer.cxx Diff File
mod - src/Interface/Interface_ParamSet.cxx Diff File
mod - src/InterfaceGraphic/InterfaceGraphic_cPrintf.cxx Diff File
mod - src/InterfaceGraphic/InterfaceGraphic_Palette.c Diff File
mod - src/IntWalk/IntWalk_IWalking_2.gxx Diff File
mod - src/LDOM/LDOMString.cxx Diff File
mod - src/LDOM/LDOM_BasicAttribute.cxx Diff File
mod - src/LDOM/LDOM_BasicElement.cxx Diff File
mod - src/LDOM/LDOM_CharacterData.cxx Diff File
mod - src/LDOM/LDOM_CharReference.cxx Diff File
mod - src/LDOM/LDOM_Document.cxx Diff File
mod - src/LDOM/LDOM_MemManager.cxx Diff File
mod - src/LDOM/LDOM_XmlReader.cxx Diff File
mod - src/OSD/OSD_DirectoryIterator.cdl Diff File
mod - src/OSD/OSD_DirectoryIterator.cxx Diff File
mod - src/OSD/OSD_FileIterator.cdl Diff File
mod - src/OSD/OSD_FileIterator.cxx Diff File
mod - src/PCollection/PCollection_HAsciiString.cxx Diff File
mod - src/QABugs/QABugs_11.cxx Diff File
mod - src/QANCollection/QANCollection_PerfSparseArray.hxx Diff File
mod - src/StepData/StepData_UndefinedEntity.cxx Diff File
mod - src/TestTopOpeDraw/TestTopOpeDraw_OtherCommands.cxx Diff File
mod - src/VrmlData/VrmlData_IndexedFaceSet.hxx Diff File
mod - src/VrmlData/VrmlData_IndexedLineSet.hxx Diff File
mod - src/XmlObjMgt/XmlObjMgt.cxx Diff File
mod - src/XmlTObjDrivers/XmlTObjDrivers_IntSparseArrayDriver.cxx Diff File

Issue History

Date Modified Username Field Change
2013-09-18 09:56 omy New Issue
2013-09-18 09:56 omy Assigned To => omy
2013-09-18 09:56 omy Relationship added related to 0023934
2013-09-18 09:57 omy Status new => assigned
2013-09-18 16:42 omy Note Added: 0025636
2013-09-18 16:42 omy Assigned To omy => abv
2013-09-18 16:42 omy Status assigned => resolved
2013-09-19 06:34 abv Note Added: 0025639
2013-09-19 06:34 abv Assigned To abv => omy
2013-09-19 06:34 abv Status resolved => assigned
2013-09-19 06:35 abv Note Edited: 0025639
2013-09-19 14:02 omy Note Added: 0025650
2013-09-19 14:02 omy Assigned To omy => abv
2013-09-19 14:02 omy Status assigned => resolved
2013-09-23 10:03 abv Note Added: 0025694
2013-09-23 10:03 abv Assigned To abv => bugmaster
2013-09-23 10:03 abv Status resolved => reviewed
2013-09-23 11:28 mkv Test case number => Not needed
2013-09-23 11:28 mkv Assigned To bugmaster => mkv
2013-09-24 16:56 mkv Note Added: 0025713
2013-09-24 16:57 mkv Assigned To mkv => omy
2013-09-24 16:57 mkv Status reviewed => assigned
2013-09-25 07:11 abv Note Added: 0025720
2013-09-25 07:11 abv Assigned To omy => bugmaster
2013-09-25 07:11 abv Status assigned => resolved
2013-09-25 07:11 abv Status resolved => reviewed
2013-09-25 10:08 mkv Assigned To bugmaster => mkv
2013-09-26 12:57 mkv Note Added: 0025744
2013-09-26 12:58 mkv Assigned To mkv => bugmaster
2013-09-26 12:58 mkv Status reviewed => tested
2013-09-30 15:53 bugmaster Changeset attached => occt master 7dc9e047
2013-09-30 15:53 bugmaster Status tested => verified
2013-09-30 15:53 bugmaster Resolution open => fixed
2013-12-19 13:52 bugmaster Status verified => closed
2013-12-19 13:58 bugmaster Fixed in Version => 6.7.0
2014-01-11 11:58 abv Category OCCT Release:BUILD => OCCT:Coding