Re:A bug in GCC that may cause memory leaks in valid C++ pro...
by jmgao on Friday April 28, 2017 @03:00AM
(#14217411)
There's probably far more reasonable cases of temporaries being immediately destructed than you'd expect.
One that springs to mind is gtest. It defines a bunch of macros like ASSERT_TRUE that return a temporary object that has operator<< overloads to let you add additional information to the assertion failure. For example:
ASSERT_NE(-1, open("/foo", O_RDONLY)) << "failed to open file: " << strerror(errno);
It's perfectly legitimate to just go ASSERT_TRUE(1 != 2), though.
One that springs to mind is gtest. It defines a bunch of macros like ASSERT_TRUE that return a temporary object that has operator<< overloads to let you add additional information to the assertion failure. For example:
It's perfectly legitimate to just go ASSERT_TRUE(1 != 2), though.