MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0023919Community[OCCT] OCCT:Foundation Classespublic2013-04-21 09:122013-12-19 13:55
ReporterRoman Lygin 
Assigned ToRoman Lygin 
PrioritynormalSeverityfeature 
StatusclosedResolutionfixed 
PlatformAOSLOS VersionL
Product Version[OCCT] 6.6.0 
Target Version[OCCT] 6.7.0Fixed in Version[OCCT] 6.7.0 
Summary0023919: Redefine operator* to Handle_Standard_{Transient|Persistent} subclasses
DescriptionThe operator* is now to be redefined in subclasses helping to reduce the code as follows:

void Standard_HandleTest::Ref()
{
    Handle(MMgt_TShared) aH = new MMgt_TShared;
#if 1
    MMgt_TShared& aR = *aH;
#else
    MMgt_TShared& aR = *(aH.operator->());
#endif
}

This also makes OCC handle more compliant with NCollection_Handle and std::shared_ptr.
Steps To ReproduceCompile the code snippet given in the description.
TagsNo tags attached.
Test case numberNot needed
Attached Files

- Relationships

-  Notes
(0024229)
Roman Lygin (developer)
2013-04-21 09:16

Fix pushed into git repository
(0024234)
abv (manager)
2013-04-22 08:50

No remarks, please test
(0024271)
apn (administrator)
2013-04-25 12:37

Dear BugMaster,

Branch CR23919 (and products from GIT master) was compiled on Linux and Windows platforms and tested with rebase.
SHA-1: 17658d518290026f943d87ec4045b3534c7af5c1

Number of compiler warnings:

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

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

Regressions:
No regressions

Improvements:
No improvements

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 366386144 / 366591836
Total CPU difference: 44237.570000001346 / 54395.14000000041

Testing on Windows:
Total MEMORY difference: 418521512 / 418944196
Total CPU difference: 32915.234375 / 33369.984375

There are not serious differences in images found by testdiff.

- Related Changesets
occt: master ed6afcbd
Timestamp: 2013-04-21 05:15:00
Author: Roman Lygin
Details ] Diff ]
0023919: Redefine operator* to Handle_Standard_{Transient|Persistent} subclasses
mod - src/Standard/Standard_DefineHandle.hxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2013-04-21 09:12 Roman Lygin New Issue
2013-04-21 09:12 Roman Lygin Assigned To => abv
2013-04-21 09:16 Roman Lygin Note Added: 0024229
2013-04-21 09:16 Roman Lygin Status new => resolved
2013-04-21 09:30 kgv Description Updated View Revisions
2013-04-22 08:50 abv Note Added: 0024234
2013-04-22 08:50 abv Status resolved => reviewed
2013-04-22 08:51 abv Assigned To abv => bugmaster
2013-04-25 12:37 apn Note Added: 0024271
2013-04-25 12:38 apn Test case number => Not needed
2013-04-25 12:38 apn Status reviewed => tested
2013-04-25 17:29 bugmaster Target Version => 6.7.0
2013-04-30 10:28 Roman Lygin Changeset attached => occt master ed6afcbd
2013-04-30 10:28 Roman Lygin Assigned To bugmaster => Roman Lygin
2013-04-30 10:28 Roman Lygin Status tested => verified
2013-04-30 10:28 Roman Lygin Resolution open => fixed
2013-12-19 13:53 bugmaster Status verified => closed
2013-12-19 13:55 bugmaster Fixed in Version => 6.7.0


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker