Prev: managing identities
Next: Call Tree Generator
From: robin on 7 Feb 2010 09:09 <analyst41(a)hotmail.com> wrote in message news:927645a3-7b77-47a1-a4cb-17824bfad53d(a)k19g2000yqc.googlegroups.com... On Feb 4, 1:14 am, glen herrmannsfeldt <g...(a)ugcs.caltech.edu> wrote: >> robin <robi...(a)bigpond.com> wrote: >> >> (snip, someone wrote) > >> >> Would be possible to write a fortran program to check >> >> argument lists? >> > That wouldn't do what Lynn wanted, which was to check >> > argument types as well as numbers of arguments. >> >> It would be possible, but not easy. > >> It takes much of the front end of a Fortran compiler to do it. >> Fortran compilers lately are rarely written in Fortran. >I am sure the these two are easy to write in Fortran >(1) Recognize lines that start a sub-program declaration >(2) extract the number and names of arguments >You then have to keep reading lines until the first exceutable >statement (is that easy, may be not). >Is it going to be very hard to see what rank and type has been >declared for each argument? >Perhaps - but still a lot easier than an entire compiler, I think. But none of that is necessary. Why re-invent wleels? An F90+ compiler will do it automatically.
From: JB on 9 Feb 2010 05:25 On 2010-02-04, glen herrmannsfeldt <gah(a)ugcs.caltech.edu> wrote: > Most of the front end of a compiler is tokenizing and parsing. Not really. If we were to take gfortran as representative of a modern production quality Fortran frontend, the parser is about 10 % of the SLOC's of the entire frontend (specifically, the files parse.* scanner.c match*). -- JB
From: Lynn McGuire on 19 Feb 2010 17:55
>> Does IVF create a .MOD file for each .F file ? Do the >> .MOD file(s) have to put into a certain area for the .F >> files to look them (my .F files are scattered over about >> 100 directories) ? > > Colin has it right. The generated .mod file (a corresponding .f90 file > is also created but that's just for human convenience) is placed (and > looked for) in the folder that other .mod files go, which can be > specified by the /module option. In a Visual Studio project, this is by > default the "intermediate" directory, usually named Debug or Release. IVF is working well. Thanks, Lynn |