[PATCH] libcamera: base: signal: Drop pre-C++17 support

Kieran Bingham kieran.bingham at ideasonboard.com
Mon Mar 3 13:40:24 CET 2025


Quoting Paul Elder (2025-02-26 05:56:10)
> On Wed, Feb 26, 2025 at 02:55:41AM +0200, Laurent Pinchart wrote:
> > The libcamera public API requires C++17, ddddrop support for older
> 
> ddddrop :)
> 
> > standards.
> > 
> > Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> 
> Reviewed-by: Paul Elder <paul.elder at ideasonboard.com>

Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

> 
> > ---
> >  include/libcamera/base/signal.h | 14 ++++----------
> >  1 file changed, 4 insertions(+), 10 deletions(-)
> > 
> > diff --git a/include/libcamera/base/signal.h b/include/libcamera/base/signal.h
> > index bbff1495ac75..ed1d81ea5c98 100644
> > --- a/include/libcamera/base/signal.h
> > +++ b/include/libcamera/base/signal.h
> > @@ -63,11 +63,8 @@ public:
> > 
> >  #ifndef __DOXYGEN__
> >       template<typename T, typename Func,
> > -              std::enable_if_t<std::is_base_of<Object, T>::value
> > -#if __cplusplus >= 201703L
> > -                               && std::is_invocable_v<Func, Args...>
> > -#endif
> > -                               > * = nullptr>
> > +              std::enable_if_t<std::is_base_of<Object, T>::value &&
> > +                               std::is_invocable_v<Func, Args...>> * = nullptr>
> >       void connect(T *obj, Func func, ConnectionType type = ConnectionTypeAuto)
> >       {
> >               Object *object = static_cast<Object *>(obj);
> > @@ -75,11 +72,8 @@ public:
> >       }
> > 
> >       template<typename T, typename Func,
> > -              std::enable_if_t<!std::is_base_of<Object, T>::value
> > -#if __cplusplus >= 201703L
> > -                               && std::is_invocable_v<Func, Args...>
> > -#endif
> > -                               > * = nullptr>
> > +              std::enable_if_t<!std::is_base_of<Object, T>::value &&
> > +                               std::is_invocable_v<Func, Args...>> * = nullptr>
> >  #else
> >       template<typename T, typename Func>
> >  #endif
> > 
> > base-commit: 33ce463a46c44f874fdbc3e484bee730e7b251a3
> > --
> > Regards,
> > 
> > Laurent Pinchart
> >


More information about the libcamera-devel mailing list