From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <keith.wiles@windriver.com>
Received: from mail.windriver.com (mail.windriver.com [147.11.1.11])
 by dpdk.org (Postfix) with ESMTP id 5C22311F5
 for <dev@dpdk.org>; Sun, 28 Sep 2014 03:01:44 +0200 (CEST)
Received: from ALA-HCB.corp.ad.wrs.com (ala-hcb.corp.ad.wrs.com
 [147.11.189.41])
 by mail.windriver.com (8.14.9/8.14.5) with ESMTP id s8S18C86026691
 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL)
 for <dev@dpdk.org>; Sat, 27 Sep 2014 18:08:12 -0700 (PDT)
Received: from ALA-MBB.corp.ad.wrs.com ([169.254.1.18]) by
 ALA-HCB.corp.ad.wrs.com ([147.11.189.41]) with mapi id 14.03.0174.001; Sat,
 27 Sep 2014 18:08:11 -0700
From: "Wiles, Roger Keith" <keith.wiles@windriver.com>
To: "<dev@dpdk.org>" <dev@dpdk.org>
Thread-Topic: [dpdk-dev] [PATCH] Clang compile error with
 RTE_LIBRTE_MEMPOOL_DEBUG enabled.
Thread-Index: AQHP2rirawvksid6GEO9WRtfdAq7Uw==
Date: Sun, 28 Sep 2014 01:08:11 +0000
Message-ID: <92E361B5-FADB-4337-BB28-E2D22BC17FA6@windriver.com>
References: <41114A6E-08AB-4269-9E4F-9930BD04D8E2@windriver.com>
In-Reply-To: <41114A6E-08AB-4269-9E4F-9930BD04D8E2@windriver.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [172.25.40.166]
Content-Type: text/plain; charset="Windows-1252"
Content-ID: <B89F44C0EEB6C549B96036CC058D71C9@local>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: Re: [dpdk-dev] [PATCH] Clang compile error
	with	RTE_LIBRTE_MEMPOOL_DEBUG enabled.
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Sep 2014 01:01:44 -0000

Self nack this one :-(. It looks like the code should be something like thi=
s instead:

#if (__GNUC__ > 4) || ((__GNUC__ =3D=3D 4) && (__GNUC_MINOR__ >=3D 4))
#pragma GCC push_options
#pragma GCC diagnostic ignored "-Wcast-qual"
#endif

GCC 4.4 is when push_options and pop_options showed up in GCC. I will post =
a new patch, but I wanted to ask if this was the best solution for these if=
defs? If someone sees a better solution please let me know.

Thanks
++Keith

On Sep 27, 2014, at 12:53 AM, Wiles, Roger Keith <keith.wiles@windriver.com=
> wrote:

> When enabling RTE_LIBRTE_MEMPOOL_DEBUG and compiling with clang
> compiler an error occurs, because ifdefed code now includes GCC pragmas.
>=20
> Signed-off-by: Keith Wiles <keith.wiles@windriver.com>
> ---
> lib/librte_mempool/rte_mempool.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>=20
> diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_me=
mpool.h
> index 95f19f9..299d4d7 100644
> --- a/lib/librte_mempool/rte_mempool.h
> +++ b/lib/librte_mempool/rte_mempool.h
> @@ -312,7 +312,7 @@ static inline void __mempool_write_trailer_cookie(voi=
d *obj)
>  *   - 2: just check that cookie is valid (free or allocated)
>  */
> #ifdef RTE_LIBRTE_MEMPOOL_DEBUG
> -#ifndef __INTEL_COMPILER
> +#ifdef __GCC__
> #pragma GCC push_options
> #pragma GCC diagnostic ignored "-Wcast-qual"
> #endif
> @@ -379,7 +379,7 @@ static inline void __mempool_check_cookies(const stru=
ct rte_mempool *mp,
> 		}
> 	}
> }
> -#ifndef __INTEL_COMPILER
> +#ifdef __GCC__
> #pragma GCC pop_options
> #endif
> #else
> =97
> 2.1.0
>=20

Keith Wiles, Principal Technologist with CTO office, Wind River mobile 972-=
213-5533