|
From: Ioannis V. <no...@ho...> - 2003-02-28 23:24:25
|
-------Original Message-------=0D =0D From: Jaap de Wolff=0D Date: =D0=E1=F1=E1=F3=EA=E5=F5=DE, 28 =D6=E5=E2=F1=EF=F5=DC=F1=E9=EF=F2 2= 003 4:32:26 =EC=EC=0D To: Dev-C++ Mailing List=0D Subject: RE: [Dev-C++] keywords=0D =0D This is not really new, you could use it since VC4.2 (Microsoft ~1995)=0D The only thing was you had to include <iso646.h>:=0D =0D =3D=3D> I didn't say it's new. :)=0D =0D =0D =0D /* iso646.h standard header */=0D #ifndef _ISO646=0D #define _ISO646=0D #define and &&=0D #define and_eq &=3D=0D #define bitand &=0D #define bitor |=0D #define compl ~=0D #define not !=0D #define not_eq !=3D=0D #define or ||=0D #define or_eq |=3D=0D #define xor ^=0D #define xor_eq ^=3D=0D #endif /* _ISO646 */=0D =0D /*=0D * Copyright (c) 1994 by P.J. Plauger. ALL RIGHTS RESERVED. =0D * Consult your license regarding permissions and restrictions.=0D */=0D =0D =0D =3D=3D> That's cool. That means you have lived with the language in roman= tic times.=0D =0D =0D The reason for this was that at the moment of talking about a new standar= d, =0D there were keyboards with ugly ways to access the ^~| and & key.=0D (And still at some keyboards you have to look a second time to find the=0D right key)=0D =0D =3D=3D> Well, i do not know about its exact history but i have the impres= sion that these digraphs and trigraphs were both created to help people with keyboard problems (missing these characters for example). My guess for th= e keywords is that they are intended just to be nice. Unfortunately althoug= h part of the standard, MINGW is the only compiler i have seen that accepts these keywords so far but naturally i am expecting to see them recognised soon by other compilers, as with other C++98 things missing in the past a= nd now are available. Does anyone remember the times we were here with GCC 2= =2E95 x discussing what nice things the standard defines and the compiler was missing? :)=0D =0D =0D =0D Ioannis Vranos=0D =0D * Programming pages: http://www.noicys.freeurl.com=0D * Alternative URL: http://run.to/noicys=20 |