Hi Albert, thanks for your efforts.
Since the error only occured in one file, I think we can live with this quick fix for the time being. We'll have to see how our usage of Doxygen develops anyway. (Our code has grown over quite some years already so it won't be easy do document everything and have a nice and clean documentation) Regarding the EXTENSION_MAPPING parameter: I tried setting it to FortranFree but the error still occured in the "non-fixed" version of the source file. Best regards, Fabian ----- Original Message ----- > From: "Albert" <albert.te...@gmail.com> > To: "Fabian Nick" <fabian.n...@scai.fraunhofer.de> > Cc: doxygen-users@lists.sourceforge.net > Sent: Tuesday, 13 May, 2014 7:56:38 PM > Subject: Re: [Doxygen-users] Error in file XX.f90 line:3468, state 4 > > > Posting on forum as well. > > > > > > On Tue, May 13, 2014 at 7:46 PM, Albert < albert.te...@gmail.com > > wrote: > > > > > > Hi Fabian, > > I had a quick look. > > In version 1.8.7 placing as first line" > ! > > i.e. a space followed by an exclamation mark solves the problem. > > In version 1.6.1 the file is still preprocessed but the error is gone > and the file looks OK (but maybe in more complex situations problems > do occur). > > > Determination of free or fixed formatted code is not really possible > there are always exceptions possible. In compilers this is often > solved by means of the extension and a switch. In doxygen 1.8.7 the > possibility exists to specify the type (free or fixed formatted) > Fortran code by means of EXTENSION_MAPPING in the Doxyfile: > # Doxygen selects the parser to use depending on the extension of the > files it > # parses. With this tag you can assign which parser to use for a > given > # extension. Doxygen has a built-in mapping, but you can override or > extend it > # using this tag. The format is ext=language, where ext is a file > extension, and > # language is one of the parsers supported by doxygen: IDL, Java, > Javascript, > # C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format > Fortran: > # FortranFixed, free formatted Fortran: FortranFree, unknown > formatted Fortran: > # Fortran. In the later case the parser tries to guess whether the > code is fixed > # or free formatted code, this is the default for Fortran type > files), VHDL. For > # instance to make doxygen treat .inc files as Fortran files (default > is PHP), > # and .f files as C (default is Fortran), use: inc=Fortran f=C. > # > # Note For files without extension you can use no_extension as a > placeholder. > # > # Note that for custom extensions you also need to set FILE_PATTERNS > otherwise > # the files are not read by doxygen. > > EXTENSION_MAPPING = > > > > > Albert > > > > > > > > On Tue, May 13, 2014 at 2:15 PM, Albert < albert.te...@gmail.com > > wrote: > > > > > > Hi Fabian, > > Very nice small example. I'll have a look in the evening. > > Albert > > (got message through both channels) > > > > > > > On Tue, May 13, 2014 at 1:42 PM, Fabian Nick < > fabian.n...@scai.fraunhofer.de > wrote: > > > Hi Albert, > > unfortunately I cannot send you the source file. However I was able > to boil it down to the one attached. For convenience, I also > attached the config file I used (it's just the one generated by > doxygen -g though...) > > Notice the leading blanks. > The version attached does NOT work. However, if there are equally > many leading blanks before "subroutine testsub" and "end subroutine" > it works! > Also, removing the module declarations helps as well. > > If you need more information, just let me know! > > Thanks, > > Fabian > > ----- Original Message ----- > > From: "Albert" < albert.te...@gmail.com > > > To: "Fabian Nick" < fabian.n...@scai.fraunhofer.de > > > Cc: doxygen-users@lists.sourceforge.net > > > > Sent: Tuesday, 13 May, 2014 1:12:57 PM > > Subject: Re: [Doxygen-users] Error in file XX.f90 line:3468, state > > 4 > > > > > > > > > > > > Hi Fabian, > > > > > > It is always hard to find these kind of errors. What I do is that I > > reduce the file and see what happens (good old trial and error > > removing half of the file etc.). > > > > Is it possible for you to post the file? (I could have a look in > > the > > evening. > > > > Albert > > > > > > > > > > On Tue, May 13, 2014 at 1:07 PM, Fabian Nick < > > fabian.n...@scai.fraunhofer.de > wrote: > > > > > > Hi Albert, > > > > no the Prepassing line is not present. Just "preprocessing..." and > > "parsing..." > > I tried the extra line starting with "!" anyway, but it didn't > > help. > > > > Using 1.8.7 didn't help either, however the error is now reported > > in > > line 3467 (as opposed to 3468 before). > > > > And yes, the file does compile properly. > > Are there any constructs (like strings containing '!' in the > > source) > > I could look out for? > > > > Regards, > > Fabian > > > > > > > > ----- Original Message ----- > > > From: "Albert" < albert.te...@gmail.com > > > > To: "Fabian Nick" < fabian.n...@scai.fraunhofer.de > > > > Cc: doxygen-users@lists.sourceforge.net > > > Sent: Tuesday, 13 May, 2014 12:55:10 PM > > > Subject: Re: [Doxygen-users] Error in file XX.f90 line:3468, > > > state > > > 4 > > > > > > > > > > > > > > > > > > > > > > > > > > > Hi Fabian, > > > > > > The line number is the number where it saw a problem and in this > > > case > > > this is when the file has been completely parsed. > > > The state 4 means an error with SubprogBody, so something not > > > ended > > > properly (I assume the file compiles properly). > > > > > > You are using version 1.6.1 and the current version is 1.8.7 so > > > an > > > upgrade would certainly help. > > > During the run does it say something about prepassing XX.f90 ? > > > so like: > > > Reading .../XX.f90 > > > Prepassing fixed form of .../XX.f90 > > > Parsing file XX.f90 > > > > > > The line > > > Prepassing fixed form of .../XX.f90 > > > should not be present, if present try to place a ! as fist line > > > in > > > the XX.f90 file. > > > > > > > > > Anyhow upgrading to 1.8.7 is a very good idea. > > > > > > > > > Albert > > > > > > > > > > > > > > > > > > > > > > > > On Tue, May 13, 2014 at 11:46 AM, Fabian Nick < > > > fabian.n...@scai.fraunhofer.de > wrote: > > > > > > > > > Hi everyone, > > > > > > when trying to run doxygen on a large (Fortran-)project, I get > > > the > > > "Error in file XX.f90 line:3468, state 4" error. The interesting > > > thing is that the file only has 3466 lines... > > > The file is in fixed format. Somewhere on the web it was said > > > that > > > enabling the C-preprocessor might help but it doesn't in my case. > > > I > > > also read that there was a bug which was fixed in version 1.5.6 > > > (I > > > think), however I'm using version 1.6.1. > > > > > > Any advice on what I could try? > > > > > > Regards, > > > Fabian > > > > > > ------------------------------------------------------------------------------ > > > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For > > > FREE > > > Instantly run your Selenium tests across 300+ browser/OS combos. > > > Get unparalleled scalability from the best Selenium testing > > > platform > > > available > > > Simple to use. Nothing to install. Get started now for free." > > > http://p.sf.net/sfu/SauceLabs > > > _______________________________________________ > > > Doxygen-users mailing list > > > Doxygen-users@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/doxygen-users > > > > > > > > > > > > > > ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ Doxygen-users mailing list Doxygen-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/doxygen-users