From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alon Levy Subject: Re: [PTACH] libcacard: fix VCARD_ATTR_PREFIX macro Date: Sun, 18 Mar 2012 20:23:50 +0100 Message-ID: <20120318192350.GH6715@garlic.redhat.com> References: <4F661E3E.60007@informatik.tu-chemnitz.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: kvm@vger.kernel.org To: Marcel Heinz Return-path: Received: from mx1.redhat.com ([209.132.183.28]:40169 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754501Ab2CRTX7 (ORCPT ); Sun, 18 Mar 2012 15:23:59 -0400 Content-Disposition: inline In-Reply-To: <4F661E3E.60007@informatik.tu-chemnitz.de> Sender: kvm-owner@vger.kernel.org List-ID: On Sun, Mar 18, 2012 at 06:41:18PM +0100, Marcel Heinz wrote: > Hi, > Thanks for the patch, but I think you are using a not up to date tree, it's fixed by: commit 0202181245297a9e847c05f4a18623219d95e93e Author: Hans de Goede Date: Fri Mar 2 16:49:44 2012 +0100 libcacard: Fix compilation with gcc-4.7 (same fix). Alon > i just tried to compile lastest git HEAD and ran into the following > problem: > > vcard_emul_nss.c:528:1: error: initializer element is not constant > > The source code is: > static const unsigned char nss_atr[] = { VCARD_ATR_PREFIX(3), 'N', 'S', 'S' }; > > with > > #define VCARD_ATR_PREFIX(size) (0x3b, 0x68+(size), 0x00, 0xff, \ > 'V', 'C', 'A', 'R', 'D', '_') > > The parentheses in this macro result in the use of the comma operator > in the initialization and are clearly not correct. This is a regression > from commit 0082f4336e128a17d5f34e01de0fd29930e99b0d, which changed > 0x66+(size) to 0x68+size and added the parenthesis. > > So I propose the following patch: > > diff --git a/libcacard/vcardt.h b/libcacard/vcardt.h > index d4d8e2e..d3e9522 100644 > --- a/libcacard/vcardt.h > +++ b/libcacard/vcardt.h > @@ -26,8 +26,8 @@ typedef struct VCardEmulStruct VCardEmul; > #define MAX_CHANNEL 4 > > /* create an ATR with appropriate historical bytes */ > -#define VCARD_ATR_PREFIX(size) (0x3b, 0x68+(size), 0x00, 0xff, \ > - 'V', 'C', 'A', 'R', 'D', '_') > +#define VCARD_ATR_PREFIX(size) 0x3b, 0x68+(size), 0x00, 0xff, \ > + 'V', 'C', 'A', 'R', 'D', '_' > > > typedef enum { > > > > Regards, > Marcel > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html