0028361: Visualization, TKV3d - buggy behavior of Transformation Persistence compiled...
authorapl <apl@opencascade.com>
Thu, 26 Jan 2017 09:54:30 +0000 (12:54 +0300)
committerapn <apn@opencascade.com>
Thu, 2 Feb 2017 13:11:17 +0000 (16:11 +0300)
commitff2bd6ef485ab9e33b1c7c74d3dc49680303cb27
treeb7a2b4a5ba951cb1990e77fed3c01d17377a1c64
parent8cc8a6925d291c89801e114a7de7e76f00735d2d
0028361: Visualization, TKV3d - buggy behavior of Transformation Persistence compiled on several Linux platforms in optimized mode

The patch fixes transformation persistence for various set of GCC compilers.
1) Optimized template-specialized operator /= for division (causes bugs)
   of NCollection_Vec4 was replaced with non-specialized version.
2) NCollection_Vec4::xyz() is not used since compiler uses modifiable-reference
   returning version, which invokes warning of possible strict-aliasing rules
   violation and leads to incorrect behavior of the reference.
src/Graphic3d/Graphic3d_TransformPers.hxx
tests/bugs/vis/bug28361 [new file with mode: 0644]