From 9e364d6f4b1718e07efa0b4105c96259ef4826b9 Mon Sep 17 00:00:00 2001 From: Felipe Magno de Almeida Date: Tue, 11 Mar 2014 10:07:17 +0900 Subject: [PATCH] eina-cxx: Fixes compilation errors and warnings in clang Summary: @fix compilation errors with defining variable and type on the same statement on clang without a default-constructor. Also removed warnings with inconsistent uses of struct/class for forward declaration and unused parameters. Reviewers: cedric, stefan_schmidt CC: savio, cedric Differential Revision: https://phab.enlightenment.org/D622 --- src/Makefile_Eina_Cxx.am | 2 ++ src/bindings/eina_cxx/eina_inarray.hh | 2 +- src/bindings/eina_cxx/eina_inlist.hh | 2 +- src/bindings/eina_cxx/eina_log.hh | 12 ++++++++---- src/bindings/eina_cxx/eina_ptrarray.hh | 6 +++--- src/bindings/eina_cxx/eina_ptrlist.hh | 4 ++-- 6 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/Makefile_Eina_Cxx.am b/src/Makefile_Eina_Cxx.am index 69ae679010..d82493af13 100644 --- a/src/Makefile_Eina_Cxx.am +++ b/src/Makefile_Eina_Cxx.am @@ -14,8 +14,10 @@ bindings/eina_cxx/eina_inarray.hh \ bindings/eina_cxx/eina_inlist.hh \ bindings/eina_cxx/eina_iterator.hh \ bindings/eina_cxx/eina_lists_auxiliary.hh \ +bindings/eina_cxx/eina_log.hh \ bindings/eina_cxx/eina_ptrarray.hh \ bindings/eina_cxx/eina_ptrlist.hh \ +bindings/eina_cxx/eina_range_types.hh \ bindings/eina_cxx/eina_ref.hh \ bindings/eina_cxx/eina_stringshare.hh \ bindings/eina_cxx/eina_thread.hh \ diff --git a/src/bindings/eina_cxx/eina_inarray.hh b/src/bindings/eina_cxx/eina_inarray.hh index 7f6f9d2006..a82eaa7c39 100644 --- a/src/bindings/eina_cxx/eina_inarray.hh +++ b/src/bindings/eina_cxx/eina_inarray.hh @@ -146,7 +146,7 @@ static T& index(Eina_Inarray* raw, std::size_t i) }; template -struct inarray; +class inarray; template struct range_inarray : _range_template diff --git a/src/bindings/eina_cxx/eina_inlist.hh b/src/bindings/eina_cxx/eina_inlist.hh index 9144735857..a0512096b5 100644 --- a/src/bindings/eina_cxx/eina_inlist.hh +++ b/src/bindings/eina_cxx/eina_inlist.hh @@ -240,7 +240,7 @@ struct _inlist_access_traits { }; template -struct inlist; +class inlist; template struct range_inlist : _range_template diff --git a/src/bindings/eina_cxx/eina_log.hh b/src/bindings/eina_cxx/eina_log.hh index aec9b2ef62..d6b8f294ad 100644 --- a/src/bindings/eina_cxx/eina_log.hh +++ b/src/bindings/eina_cxx/eina_log.hh @@ -43,15 +43,19 @@ struct _domain_base } }; -const struct global_domain : _domain_base +struct global_domain : _domain_base { int domain_raw() const { return EINA_LOG_DOMAIN_GLOBAL; } -} global_domain; +}; -const struct default_domain : _domain_base +struct global_domain const global_domain = {}; + +struct default_domain : _domain_base { int domain_raw() const { return EINA_LOG_DOMAIN_DEFAULT; } -} default_domain; +}; + +struct default_domain const default_domain = {}; struct log_domain : _domain_base { diff --git a/src/bindings/eina_cxx/eina_ptrarray.hh b/src/bindings/eina_cxx/eina_ptrarray.hh index b08d258811..0587610669 100644 --- a/src/bindings/eina_cxx/eina_ptrarray.hh +++ b/src/bindings/eina_cxx/eina_ptrarray.hh @@ -221,7 +221,7 @@ static eina::iterator ibegin(Eina_Array* array) return eina::iterator( ::eina_array_iterator_new(array) ); } template -static eina::iterator iend(Eina_Array* array) +static eina::iterator iend(Eina_Array*) { return eina::iterator(); } @@ -231,7 +231,7 @@ static eina::iterator ibegin(Eina_Array const* array) return eina::iterator( ::eina_array_iterator_new(array) ); } template -static eina::iterator iend(Eina_Array const* array) +static eina::iterator iend(Eina_Array const*) { return eina::iterator(); } @@ -259,7 +259,7 @@ static bool empty(Eina_Array const* array) }; template -struct ptr_array; +class ptr_array; template struct range_ptr_array : _range_template diff --git a/src/bindings/eina_cxx/eina_ptrlist.hh b/src/bindings/eina_cxx/eina_ptrlist.hh index 435077de91..f81c0ba40f 100644 --- a/src/bindings/eina_cxx/eina_ptrlist.hh +++ b/src/bindings/eina_cxx/eina_ptrlist.hh @@ -215,7 +215,7 @@ static eina::iterator ibegin(Eina_List const* list) return eina::iterator( ::eina_list_iterator_new(list) ); } template -static eina::iterator iend(Eina_List const* list) +static eina::iterator iend(Eina_List const*) { return eina::iterator(); } @@ -379,7 +379,7 @@ struct _mutable_range_ptr_list : _const_range_ptr_list }; template -struct ptr_list; +class ptr_list; template struct range_ptr_list : _range_template