libcamera: base: signal: Drop pre-C++17 support
diff mbox series

Message ID 20250226005541.30200-1-laurent.pinchart@ideasonboard.com
State Accepted
Headers show
Series
  • libcamera: base: signal: Drop pre-C++17 support
Related show

Commit Message

Laurent Pinchart Feb. 26, 2025, 12:55 a.m. UTC
The libcamera public API requires C++17, ddddrop support for older
standards.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 include/libcamera/base/signal.h | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)


base-commit: 33ce463a46c44f874fdbc3e484bee730e7b251a3
--
Regards,

Laurent Pinchart

Comments

Paul Elder Feb. 26, 2025, 5:56 a.m. UTC | #1
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@ideasonboard.com>

Reviewed-by: Paul Elder <paul.elder@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
>
Kieran Bingham March 3, 2025, 12:40 p.m. UTC | #2
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@ideasonboard.com>
> 
> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>

Reviewed-by: Kieran Bingham <kieran.bingham@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
> >

Patch
diff mbox series

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