From 76d2303c4077e625ca019c433351f486d67b439c Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Wed, 16 May 2018 14:18:13 +0200 Subject: [PATCH] fix(general): avoid invalid cast on Windows with L_DECLARE_PRIVATE macro --- include/linphone/utils/general.h | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/include/linphone/utils/general.h b/include/linphone/utils/general.h index 26c99603e..829d4bda5 100644 --- a/include/linphone/utils/general.h +++ b/include/linphone/utils/general.h @@ -189,15 +189,13 @@ namespace Private { #define L_INTERNAL_DECLARE_PRIVATE(CLASS) \ inline CLASS ## Private *getPrivate () { \ L_INTERNAL_CHECK_OBJECT_INHERITANCE(CLASS); \ - return reinterpret_cast( \ - LinphonePrivate::Private::BetterPrivateAncestor::mPrivate \ - ); \ + using TypeAncestor = LinphonePrivate::Private::BetterPrivateAncestor; \ + return reinterpret_cast(TypeAncestor::mPrivate); \ } \ inline const CLASS ## Private *getPrivate () const { \ L_INTERNAL_CHECK_OBJECT_INHERITANCE(CLASS); \ - return reinterpret_cast( \ - LinphonePrivate::Private::BetterPrivateAncestor::mPrivate \ - ); \ + using TypeAncestor = LinphonePrivate::Private::BetterPrivateAncestor; \ + return reinterpret_cast(TypeAncestor::mPrivate); \ } \ friend class CLASS ## Private; \ friend class Wrapper;