* Fixes glibc++ 5 checking
* Always checking `OPENTELEMETRY_TRIVIALITY_TYPE_TRAITS` when `OPENTELEMETRY_STL_VERSION` is defined
* Restore confg.h but left a warning
* Add synchronous gauge
* Add ABI Version macro, update tests
* Fix function description
* Fix formatting
* Remove ABI macros from SDK.
* Add error log for gauge delta temporality.
* Fix formatting
* Apply suggestions from code review
Move kGauge to the end, for better ABI compatibility.
---------
Co-authored-by: Lalit Kumar Bhasin <lalit_fin@yahoo.com>
Co-authored-by: Marc Alff <marc.alff@free.fr>
gcc <= 8, when building with -Wextra (and -Werror) wrongly raises this:
/data/mwrep/res/mdw/SIOTF/internal/opentelemetry_cpp/trace/18-0-0-7/include/opentelemetry/trace/default_span.h: In copy constructor 'opentelemetry::v1::trace::DefaultSpan::DefaultSpan(const opentelemetry::v1::trace::DefaultSpan&)':
/data/mwrep/res/mdw/SIOTF/internal/opentelemetry_cpp/trace/18-0-0-7/include/opentelemetry/trace/default_span.h:70:3: error: base class 'class opentelemetry::v1::trace::Span' should be explicitly initialized in the copy constructor [-Werror=extra]
DefaultSpan(const DefaultSpan &spn) noexcept : span_context_(spn.GetContext()) {}
^~~~~~~~~~~
See on Compiler Explorer here: https://godbolt.org/z/ed5rv74nT
I believe Jason Merrill fixed it in gcc for all gcc >= 9 with:
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=f3f7cefecc833b4ab652215ceb8b408c21dca225;hp=777083bb806dbe31ab97002b7d445191d3ee7a2d
Workaround this by calling explicitly the empty Span constructor.
* Use `fopen`, `fwrite`, `fflush` and `fclose` which are thread-safety.
* Add some macros to help to find problems.
Add `OPENTELEMETRY_ATTRIBUTE_LIFETIME_BOUND` , `OPENTELEMETRY_SANITIZER_NO_MEMORY` , `OPENTELEMETRY_SANITIZER_NO_THREAD`, `OPENTELEMETRY_SANITIZER_NO_ADDRESS`, `OPENTELEMETRY_HAVE_BUILTIN`, `OPENTELEMETRY_HAVE_FEATURE`, `OPENTELEMETRY_HAVE_ATTRIBUTE`, `OPENTELEMETRY_HAVE_CPP_ATTRIBUTE`
* Append EOL before call Export of backend
---------
Co-authored-by: Marc Alff <marc.alff@oracle.com>