From 538ebdbe7f356396956cb7524430f47ef24ff9e8 Mon Sep 17 00:00:00 2001 From: Jonas Rembser Date: Mon, 3 Nov 2025 10:33:54 +0100 Subject: [PATCH] [core] Add TColorNumber constructor from a C-style string We also require an overload for C-style strings. That's because the TColorNumber is designed to be constructed implicitly, and C++ won't do two user-defined conversions in a single implicit conversion chain. --- core/base/inc/TColor.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/base/inc/TColor.h b/core/base/inc/TColor.h index 1bce82e11ea26..4c68a6e1959b0 100644 --- a/core/base/inc/TColor.h +++ b/core/base/inc/TColor.h @@ -143,6 +143,10 @@ class TColorNumber { public: TColorNumber(Int_t color) : fNumber{color} {} TColorNumber(std::string const &color); + // We also require an overload for C-style strings. That's because the + // TColorNumber is designed to be constructed implicitly, and C++ won't do + // two user-defined conversions in a single implicit conversion chain. + inline TColorNumber(const char *color) : TColorNumber{std::string{color}} {} TColorNumber(std::array rgb); Int_t number() const { return fNumber; }