If you prefer to look at a github issue, feel free to take a look at this issue in our fork:
https://github.com/carthurs/MITK/issues/3 I copy/pasted the content from the issue below, editing the line numbers to match what's in MITK's master branch. This call to `GetControlPoint` stores the return value in a reference https://github.com/MITK/MITK/blob/0f33cec9e310c3f69b6c46795f29c026f7e90dc6/M odules/PlanarFigure/src/DataManagement/mitkPlanarEllipse.cpp#L63 But `GetControlPoint` does not return a `Point2D&`, it returns a `Point2D` https://github.com/MITK/MITK/blob/0f33cec9e310c3f69b6c46795f29c026f7e90dc6/M odules/PlanarFigure/src/DataManagement/mitkPlanarFigure.cpp#L240 I would take that to mean that the well defined lifetime of `centerPoint` is a single line. MSVC may have a compiler extension allowing this, but I am not sure if MITK has enabled this or not, and even if this option was enabled, this is platform specific behavior and may not work the same on Mac, Linux, etc. There is a note about const refs extending the liftetime of temporary objects, Bottom of: https://en.cppreference.com/w/cpp/language/reference#Lvalue_references > Note that rvalue references and lvalue references to const extend the lifetimes of temporary objects (see Reference initialization for rules and exceptions). But, reading the extensions linked in "Reference initialization" >From "Lifetime of a temporary" https://en.cppreference.com/w/cpp/language/reference_initialization > Whenever a reference is bound to a temporary or to a subobject thereof, the lifetime of the temporary is extended to match the lifetime of the reference, with the following exceptions: > - a temporary bound to a return value of a function in a return statement is not extended: it is destroyed immediately at the end of the return expression. Such function always returns a dangling reference. > ... So a const ref *would be* except, if not for the fact that we're taking a ref to a return value. This sounds like UB to me, but I'm not 100% sure if itkFixedArray has something to mitigate this. Let me know what you think. Hope that helps, * Alex
_______________________________________________ mitk-users mailing list mitk-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mitk-users