icecream-cpp
icecream-cpp copied to clipboard
🍦 Never use cout/printf to debug again
I'm used to the Python icecream library and really like this style of printf based debugging. While looking for C++ based library, I found this repo & another one: https://github.com/sharkdp/dbg-macro...
Just creating a git tag, and changing the version number in CMakeLists.txt would be good. The last release was 2 years ago, while there has been a bunch of new...
A comma inside a string or a char was being detected as an argument separator.
Some functionalities in `` (e.g. `std::codecvt`) are being deprecated since C++ 17/20. Please refer to https://en.cppreference.com/w/cpp/locale/codecvt for more details. Compiling with these usages may throw annoying warnings.
Due to limited information provided by Clang when using [`__builtin_dump_struct`](https://clang.llvm.org/docs/LanguageExtensions.html#builtin-dump-struct) function, some struct members types can not be printed. Enums, none of them can be printed. With arrays, only the...
Due to a Clang [bug](https://bugs.llvm.org/show_bug.cgi?id=45143), is not possible correctly print float and double struct members declared using aliased type names. When calling variadic functions, float arguments are [promoted to doubles](https://en.cppreference.com/w/cpp/language/variadic_arguments#Default_conversions)...
 ```cpp #include #include #include "icecream.hpp" using namespace std; #define DETECT_TYPE(x) \ do \ { \ IC(sizeof(x)); \ IC_("d", std::numeric_limits::max()); \ IC_("d", std::numeric_limits::min()); \ IC_("d",...
Just to share my experience, hope it will help someone, great and useful lib, so here it is ... Testbed : > Debian clang version 16.0.6 (15) > Target: x86_64-pc-linux-gnu...
Add new feature to print char array to one line. ``` IC("abcdefghijklmn"); char text[128] = "abcdefghijklmn"; IC(text); ``` -------------- **#define ICECREAM_PRINT_CHAR_ARRAY_AS_STRING** ``` output: ic| "abcdefghijklmn": abcdefghijklmn ic| text: abcdefghijklmn ```...
The code ``` char const foo[] = "bar"; IC((char*)foo); ``` Should print ``` ic| (char*)foo: "bar" ``` But now is printing ``` ic| char*: "bar" ```