From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26104 invoked by alias); 31 Jul 2002 20:16:05 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 26049 invoked by uid 71); 31 Jul 2002 20:16:03 -0000 Date: Wed, 31 Jul 2002 13:16:00 -0000 Message-ID: <20020731201602.26047.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: Zack Weinberg Subject: Re: preprocessor/7457: failure preprocessing ## directive Reply-To: Zack Weinberg X-SW-Source: 2002-07/txt/msg00820.txt.bz2 List-Id: The following reply was made to PR preprocessor/7457; it has been noted by GNATS. From: Zack Weinberg To: gnicholls@bluephoenixsolutions.com Cc: gcc-gnats@gcc.gnu.org Subject: Re: preprocessor/7457: failure preprocessing ## directive Date: Wed, 31 Jul 2002 13:15:00 -0700 On Wed, Jul 31, 2002 at 07:50:39PM -0000, gnicholls@bluephoenixsolutions.com wrote: > >Description: > The following construct fails compilation:- > #define LIB_SUFF ".so" > #define SV_MODULE_NAME_STR "libdrv"##LIB_SUFF The ## is completely unnecessary in this case. Remove it and your code will work again. The C standard specifies that the result of a token-paste is undefined if the two tokens cannot be combined into a single token. This is always true of two string constants. That is what the warning is telling you. zw