dlr-gtlab / gt-logging

Basic C++14 logging library based on QsLog
0 stars 0 forks source link

Unqiue ptr and shared ptr are not logged correctly #42

Closed rainman110 closed 10 months ago

rainman110 commented 1 year ago

In GitLab by @mariusalexander on Feb 22, 2023, 14:31

See gt_logging/memory.h#L22:

smart pointer and unique ptr are switched:

// smart pointers
template <typename T, typename U>
inline Stream& operator<<(Stream& s, std::unique_ptr<T, U> const& t)
{
    {
        StreamStateSaver saver{s};
        s.nospace() << "shared_ptr(" << t.get();
    }
    return s << ')';
}

template <typename T>
inline Stream& operator<<(Stream& s, std::shared_ptr<T> const& t)
{
    {
        StreamStateSaver saver{s};
        s.nospace() << "unique_ptr(" << t.get();
    }
    return s << ')';
}
rainman110 commented 1 year ago

In GitLab by @mariusalexander on Feb 22, 2023, 14:32

created branch 42-unqiue-ptr-and-shared-ptr-are-not-logged-correctly to address this issue

rainman110 commented 1 year ago

In GitLab by @rainman110 on Mar 15, 2023, 21:35

mentioned in commit 96c6ba95d210ad51e3a2b327f9b58257eb000fc7