Xref: utzoo comp.lang.fortran:4808 comp.unix.cray:256 Path: utzoo!mnetor!tmsoft!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!uunet!mcsun!hp4nl!charon!dik From: dik@cwi.nl (Dik T. Winter) Newsgroups: comp.lang.fortran,comp.unix.cray Subject: Re: CPP "problems" (was Re: why has Cray dropped CPP support from cf77?) Message-ID: <2960@charon.cwi.nl> Date: 19 Feb 91 11:38:13 GMT References: <1298@red8.qtp.ufl.edu> <1991Feb18.145116.3840@convex.com> <1300@red8.qtp.ufl.edu> Sender: news@cwi.nl Followup-To: comp.lang.fortran Organization: CWI, Amsterdam Lines: 14 In article <1300@red8.qtp.ufl.edu> bernhold@qtp.ufl.edu (David E. Bernholdt) writes: > It is worth noting that this difference in blank significance is only > relevant when using the macro substitution capabilities of CPP -- the > include and conditional compilation features are all given with lines > beginning '#' as their first non-blank character. That is not the only possible problem. CPP is allowed to remove leading white space from a line. There is at least one CPP around that does that occasionally. Other problems that might occur are with quotes (both single and double). ANSI C preprocessors *must* look at them as starting string/ character constants, disallowing preprocessing within them. (But this is of course only a problem if you are using hollerith constants.) -- dik t. winter, cwi, amsterdam, nederland dik@cwi.nl