From owner-cvs-all Tue May 14 11:41:37 2002 Delivered-To: cvs-all@freebsd.org Received: from flood.ping.uio.no (flood.ping.uio.no [129.240.78.31]) by hub.freebsd.org (Postfix) with ESMTP id E4F3D37B409; Tue, 14 May 2002 11:41:28 -0700 (PDT) Received: by flood.ping.uio.no (Postfix, from userid 2602) id 6FBBC535E; Tue, 14 May 2002 20:41:27 +0200 (CEST) X-URL: http://www.ofug.org/~des/ X-Disclaimer: The views expressed in this message do not necessarily coincide with those of any organisation or company with which I am or have been affiliated. To: Brian Somers Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/usr.sbin/ppp cbcp.c References: <200205141332.g4EDWUG59102@freefall.freebsd.org> From: Dag-Erling Smorgrav Date: 14 May 2002 20:41:26 +0200 In-Reply-To: <200205141332.g4EDWUG59102@freefall.freebsd.org> Message-ID: Lines: 46 User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/21.2 MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Brian Somers writes: > brian 2002/05/14 06:32:30 PDT >=20 > Modified files: > usr.sbin/ppp cbcp.c=20 > Log: > Avoid a rather bizarre warning from gcc 3.1: >=20=20=20 > /usr/src/usr.sbin/ppp/cbcp.c:566:61: warning: trigraph ??! ignored It's not bizarre at all - trigraphs are possibly the most reviled feature of C89, meant to provide alternatives to some characters such as [ ] { } ~ | which in some character sets common on PCs at that time were replaced with national characters (for instance, [ ] looked like =C6 =C5 on computers using "Norwegian ASCII", before we got codepage 865). '??!' is the trigraph sequnce for '|'. Here's the full set: 5.2.1.1 Trigraph sequences [#1] All occurrences in a source file of the following sequences of three characters (called trigraph sequences11)) are replaced with the corresponding single character. ??=3D # ??) ] ??! | ??( [ ??' ^ ??> } ??/ \ ??< { ??- ~ No other trigraph sequences exist. Each ? that does not begin one of the trigraphs listed above is not changed. [#2] EXAMPLE The following source line printf("Eh???/n"); becomes (after replacement of the trigraph sequence ??/) printf("Eh?\n"); Trigraphs are so unpopular (and useless on modern systems) that GCC just warns about them, without converting them to the corresponding single character. DES --=20 Dag-Erling Smorgrav - des@ofug.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message