summaryrefslogtreecommitdiffstats
path: root/src/fortranscanner.l
Commit message (Collapse)AuthorAgeFilesLines
* Incorrect determination of fixed form Fortranalbert-github2020-03-251-2/+1
| | | | | | | | | | | | | | | | | When we have the following small example, we see that the word `subroutine` doesn't start in column 7 but in column 8. ``` subroutine expan() c2345678 " " lb " " " end ``` so the code is not converted from fixed form to free form Fortran and in the example (due to the odd number of double quoutes) result in: ``` ******************************************************************** Error in file D:/speeltuin/bug_ftn_quote/small.f line: 5, state: 22(String) ******************************************************************** ``` The condition regarding the column number was to restrictive.
* Fix not correctly formatted messagesMoritz 'Morty' Strübe2020-03-211-6/+6
|
* Enabled stricter compiler warnings and fixed all new warningsDimitri van Heesch2020-03-081-11/+11
|
* Fix compiler warnings on Windows (Visual Studio)Dimitri van Heesch2020-02-121-0/+3
|
* Move DocGroup inside CommentScanner instead of using a globalDimitri van Heesch2020-01-261-3/+3
|
* Cleanup unused/unwanted parser dependencies on code generatorDimitri van Heesch2020-01-261-1/+2
|
* Make VHDL parser reentrantDimitri van Heesch2020-01-031-2/+0
|
* Make fortranscanner.l reentrantDimitri van Heesch2020-01-011-1182/+1227
|
* Make commentscan.l reentrantDimitri van Heesch2019-12-301-3/+5
|
* Changed std::unique_ptr<Entry> to std::shared_ptr<Entry> at avoid use after ↵Dimitri van Heesch2019-12-081-49/+46
| | | | free issues
* Split language parser into "outline parser" and "code parser"Dimitri van Heesch2019-12-031-30/+6
|
* Remove bogus flex codeDimitri van Heesch2019-11-181-7/+0
|
* Fixed use of uninitialized pointer in preprocessorDimitri van Heesch2019-11-091-1/+1
|
* Spelling corrections for src directoryalbert-github2019-11-051-3/+3
| | | | | | | | Spelling corrections as found by codespell and in #561. Some reported problems were already fixed, others are fixed here, with some exceptions (a,o.): - "referenceby" in defgen.cpp as this is in the output and I cannot oversee the consequences (looks like none, but ...) - "HANGEUL_CHARSET" left as is as in some MS documentation is written: 'HANGUL_CHARSET: Also spelled "Hangeul". Specifies the Hangul Korean character set.' (https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-wmf/0d0b32ac-a836-4bd2-a112-b6000a1b4fc9).
* Replaced QList<BaseInfo> with std::vector<BaseInfo>Dimitri van Heesch2019-10-291-1/+1
|
* Changed ArgumentList to be an STL containerDimitri van Heesch2019-10-271-27/+24
|
* Merge pull request #7283 from luzpaz/typosDimitri van Heesch2019-10-091-1/+1
|\ | | | | Fix typos
| * Fix typosluz.paz2019-09-281-1/+1
| | | | | | | | | | | | Found via ``` codespell -q 3 -S *.js,*.po,./src/translator*,*.eps,./doc/changelog.doc -L ang,ans,attribs,ba,behaviour,classe,colour,german,iff,initialise,nam,nd,que,russian,statics,te,tim,uint ```
* | Use smartpointers to manage the lifetime of Entry objectsDimitri van Heesch2019-10-071-138/+102
|/
* Reduce the use of QString in favor of the more efficient QCStringDimitri van Heesch2019-09-211-1/+1
|
* Consistent way to show scanner statealbert-github2019-09-051-44/+1
| | | | | Create a consistent way to display the state mnemonics of the different scanners (analogous to the fortranscanner.l) Use an automatic procedure to generate the routine with the translation of the states to a string.
* Merge pull request #7202 from albert-github/feature/issue_7200Dimitri van Heesch2019-08-311-4/+44
|\ | | | | issue #7200 Fortran warning: type not declared or defined
| * issue #7200 Fortran warning: type not declared or definedalbert-github2019-08-151-4/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | problem in the statement: ``` type(log_handle_type), protected, save, & bind(c, name="LOG_HANDLE_one") & :: log_handle_one ``` is the fact that the "bind" attribute is not handled. - added handling of the bind attribute - extending the bind definition also with the single quote version.
* | Parsing `#` sign inserted by preprocessor in fixed Form Fortranalbert-github2019-08-301-0/+1
|/ | | | | | | | | | In Fortran a file that is included is replaced by the doxygen preprocessor by something like: `# 11 "<path>/<filename>" 2` when this is in fixed form Fortran and the `<path>/<filename>` is long it is possible that the closing double quote is beyond position 72 and thus not seen resulting in: ``` Error in file <path>/<filename> line: 73, state: 22(String) ``` this is caused as the `#` is not handled properly in prepassFixedForm. The `#` should be handled analogous to e.g. `C`.
* Merge branch 'feature/bug_endblock_msg' of ↵Dimitri van Heesch2019-08-041-1/+1
|\ | | | | | | https://github.com/albert-github/doxygen into albert-github-feature/bug_endblock_msg
| * Correction warning messagealbert-github2019-06-011-1/+1
| | | | | | | | Consistency
* | take doc group out of commentscan.lAdrian Negreanu2019-07-261-3/+3
|/ | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* Merge pull request #6931 from albert-github/feature/bug_ftn_typeDimitri van Heesch2019-05-071-1/+9
|\ | | | | Windows crash in case of incorrect end statement
| * Windows crash in case of incorrect end statementalbert-github2019-04-151-1/+9
| | | | | | | | Some Fortran compilers accept the END statement instead of the mandatory END TYPE. The code crashes on Windows as no correct END statement is found.
* | Improved const correctness and added support for inline namespacesDimitri van Heesch2019-04-211-2/+2
|/
* Merge pull request #6873 from albert-github/feature/bug_ftn_cont_labelDimitri van Heesch2019-03-171-17/+56
|\ | | | | Continuation lines and labels
| * Continuation lines and labelsalbert-github2019-03-071-17/+56
| | | | | | | | | | Better handling of continuation lines when converting from fixed form Fortran to free form Fortran, especially handling the information in columns 733 and further (which is in fixed formatted Fortran always comment) An `end` statement can start not only on lines with spaces in front of it but also when a line has a label or the `end` can be after a `;`.
* | Possibility to show converted fixed formalbert-github2019-03-071-0/+3
|/ | | | Create an easy possibility to show the Fortran source as converted from fixed form to free form.
* issue #6734 parsing performance worsenedDimitri van Heesch2019-01-071-3/+4
|
* Fortran scanner abort messagealbert-github2018-10-231-1/+47
| | | | The Fortran scanner can give a message when the scanner is aborted, in here there is also the state, but in the form of a number. This patch adds a little bit more descriptive text.
* Numbers in comment disappearalbert-github2018-10-081-1/+1
| | | | | | | | | | | | In fixed formatted Fortran code the numbers in the first positions of the comment were filtered out. This is a regression on pull request #655 example where the number '1' disappears: !> \details !> 1.) First point subroutine tst end subroutine
* Bug 796621 - @cond does not stop at @endcond Fortranalbert-github2018-06-191-8/+0
| | | | | The backslash (\) is in Fortran not an escape character but was handled as such, this has been corrected. Handling of the different Fortran string types ('...' and "...") made more consistent.
* Merge branch 'feature/bug_enum' of https://github.com/albert-github/doxygen ↵Dimitri van Heesch2018-06-101-17/+95
|\ | | | | | | into albert-github-feature/bug_enum
| * Implementation Fortran ENUM / ENUMERATIONalbert-github2018-02-171-15/+94
| | | | | | | | All ENUMs are anonymous as they don't have a name defined in the Fortran standard.
* | Merge pull request #655 from albert-github/feature/bug_fortranDimitri van Heesch2018-04-221-8/+36
|\ \ | | | | | | Fortran improvements
| * | Fortran improvementsalbert-github2018-02-121-8/+36
| |/ | | | | | | | | | | | | | | | | | | - adding NON_RECURSIVE - better handling of missing PROGRAM in case of following module / subroutine in same file - ignore (numeric)-labels in fixed source form - adding support for - TYPE IS - CLASS IS - CLASS DEFAULT
* | Fortran improvements (2)albert-github2018-02-151-2/+3
|/ | | | | - handling of type / class statement especially in declarations in source browser and scanner - color code import statement in source browser
* Misc. typosluzpaz2017-12-231-4/+4
| | | | | Super trivial typos Some are in qtools/ which I know is a 3rd party dependency but as we know is now obsolete upstream. I reckon it wouldn't be much of an issue to merge neverthless Tacked on several more commits
* Bug 733705 - parser misinterpreting fortranalbert-github2017-08-231-5/+26
| | | | Corrected handling of (local) variables as functions as well as handling of non Fortran variables used in Fortran code.
* flex: use %option instead of command line options.Adrian Negreanu2016-09-211-0/+3
|
* Bug 742452 - Fortran: attributes after a blank line are ignored / Bug 625602 ↵albert-github2016-08-271-3/+28
| | | | | | | | | - FORTRAN: comment in subroutine argument list This patch fixes the problem that comment lines in continuation parts stopped the continuation part. Patch consists of 2 parts: - correct setting of continuation characters for fixed form source code - ignoring lines with just comment (based on initial fix proposed by angus-g, but extended for empty lines and comment lines that contain a continuation character)
* Changed configuration mechanism to directly access options in order to ↵Dimitri van Heesch2016-01-171-3/+3
| | | | improve performance
* Merge pull request #435 from albert-github/feature/bug_700381Dimitri van Heesch2016-01-021-6/+21
|\ | | | | Bug 700381 - error state 21 with fortran code (fixed format)
| * Bug 700381 - error state 21 with fortran code (fixed format)albert-github2016-01-021-6/+21
| | | | | | | | Problem is caused by similar quotes inside quotes, in Fortran it is possible to "escape" quotes by doubling them.
* | Fortran inline source code and crash on Linuxalbert-github2016-01-021-1/+4
|/ | | | | This patch fixes a problem on Linux where in a number of cases doxygen crashed when an unnamed interface existed and the routine itself was in the same source file. Furthermore the end line of routines is set correctly so inline source code in Fortran will be possible as well.