| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit changes the following in relation to string use
- The implicit convert from 'QCString' to 'const char *' is removed
- Strings parameters use 'const QCString &' as much as possible in favor
over 'const char *'
- 'if (s)' where s is a QCString has been replaced by 'if(!s.isEmpty())'
- data() now always returns a valid C-string and not a 0-pointer.
- when passing a string 's' to printf and related functions 'qPrint(s)' is
used instead of 's.data()'
- for empty string arguments 'QCString()' is used instead of '0'
- The copy() operation has been removed
- Where possible 'qstrcmp(a,b)==0' has been replaces by 'a==b' and
'qstrcmp(a,b)<0' has been replaced by 'a<b'
- Parameters of string type that were default initialized with '= 0' are
no initialized with '= QCString()'
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Add a new warning class, "INCOMPLETE_DOC", and warning option
"WARN_IF_INCOMPLETE_DOC", to control whether you get a warning
for only documenting some of your function parameters.
All users who want to retain the current behavior set
WARN_IF_INCOMPLETE_DOC to the value of WARN_IF_DOC_ERROR.
|
|
|
|
|
|
|
| |
WARN_AS_ERROR is OFF
In case we want for a Continuous integration system a non-zero exit status at the end of a doxygen we can now set `WARN_AS_ERRORS=FAIL_ON_WARNINGS`.
The behavior for `NO` and `YES` remains as it was.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Flush warnings file
When having a large project the warnings file is buffered but when a long time there are no warnings emitted the last warnings are not yet written.
During testing tis is most obvious when the `dot` process starts and one needs the `.dot` files but not the converted files at hat moment one wants to kill the doxygen process but the result is an incomplete warnings file of the warnings that should already be written.
Created a flush function for the warnings file and placed it at a few strategic points.
* Flush warnings file
Last minute change without proper testing ( :-( )
* Flush warnings file
void is the default changed for consistency and due to (http://www.dietmar-kuehl.de/mirror/c++-faq/newbie.html#faq-29.4):
> C programmers often use f(void) when declaring a function that takes no parameters, however in C++ that is considered bad style. In fact, the f(void) style has been called an "abomination" by Bjarne Stroustrup, the creator of C++, Dennis Ritchie, the co-creator of C, and Doug McIlroy, head of the research department where Unix was born.
|
|
|
|
| |
Seen the discussion in the pull request #8069, for consistency change occurrences of f(void) into f().
|
|
|
|
| |
Routines doing their own formatting should also stop when `WARN_AS_ERROR` is set.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduces new option NUM_PROC_THREADS.
It specifies the number threads doxygen is allowed to use during
processing. When set to 0 doxygen will based this on the number of cores
available in the system. You can set it explicitly to a value larger than 0
to get more control over the balance between CPU load and processing speed.
At this moment only the input processing can be done using multiple threads.
I plan to extend this with more parallel processing in the future.
Since this is still an experimental feature the default is set to 1,
which efficively disables parallel processing. Please report any issues you
encounter that appear when changing the default.
Note that generating dot graphs in parallel is still controlled separately
by the DOT_NUM_THREADS setting.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When compiling debug.cpp on a 32-bit Windows system we get the warning:
```
...\doxygen\src\debug.cpp(121): warning C4244: 'return': conversion from '_Rep' to 'int', possible loss of data
with
[
_Rep=__int64
]
```
as we only use the seconds representation of the elapsed time we can do the conversion to seconds in the Timer class.
|
|
|
|
|
| |
This is disabled by default. It can be enabled by setting MULTITHREADED_INPUT to 1
in doxygen.h. Still has many data races, so don't use for anything other than development!
|
|
|
|
|
|
|
|
|
|
|
| |
- Makes doxycfg library more self contained
- renames _doxygen library to doxymain
- Modernizes Debug implementation
- Moves Doxygen::runningTime into Debug
- Moves full version string to libversion
- Removed mentioning of file version in messages (when
FILE_VERSION_FILTER is used)
- Move substitute functions into QCString
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| | |
https://github.com/albert-github/doxygen into albert-github-feature/bug_terminate
|
| |
| |
| |
| |
| | |
In case a `WARN_LOGFILE` is used it in this file no clear whether doxygen finished correctly or exited beforehand in case a fatal error.
Now a 'Exiting...' is also given in the warning log file in case an error is a fatal error.
|
| | |
|
|/
|
|
|
|
| |
namespace
Fixing some memory issues caused by not correctly freed pointers
|
|
|
|
| |
Copied va_list to avoid reuse causing crash
|
|
|
|
|
|
|
|
|
| |
In case of extremely long warning messages (e.g. in case of overloaded methods with a lot of alternatives) the warning message is truncated due to the "limited" buffer size.
By using `vsnprintf(NULL, 0, fmt, args)` it is possible to determine the length of the message based on format and actual arguments.
`char text[bufSize]` cannot be used as some older compilers don't accept it.
(reference: https://stackoverflow.com/questions/3919995/determining-sprintf-buffer-size-whats-the-standard/30909417#30909417)
|
|
|
|
| |
improve performance
|
|
|
|
| |
a warning
|
|
|
|
| |
compilers' -Werror option)
|
|
|
|
| |
Due to the order of the substitutions the $line was also substituted in the text part. Now the text part is added at the end and the substitution does not take place.
|
| |
|
|\
| |
| | |
Better error message in case of IDL inconsistency
|
| |
| |
| |
| |
| |
| |
| |
| | |
In case of an IDL internal doxygen inconsistency ("error: Internal inconsistency: namespace in IDL not module, library or
constant group ", see forum report: http://doxygen.10944.n7.nabble.com/Internal-inconsistency-Which-file-td7057.html) it is hard to find out which file causes the problem.
In this case the comment block with @namespace was the "problem").
This patch solves this by adding the file and line number of the source file causing the problem.
|
|/ |
|
| |
|
|
|
|
|
|
|
| |
The current limit for a message length in the messages file is 4095 characters. Most of the time this is more than sufficient, but in case of Fortran and a lot of arguments this might not be sufficient.
With Fortran the "data type" can be quite long as it can also includes words like: double precision, dimension, intent(inout) etc. When we have a lot of arguments and just one is described it also tries to write out the names of the non-described parameter/ arguments with the word parameter prepended resulting in an even longer line.
This patch increases the size of the buffer.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In case of error messages like:
input buffer overflow, can't enlarge buffer because scanner uses REJECT
it is not always directly clear from which lexical analyzer (.l file) this problem comes.
This patch helps to find these problems and does the following things:
- when using the option -d lex with doxygen each time a lexical analyzer is called at the start a line like the following line will be given:
Entering lexical analyzer: pre.l (for: ..../file.c)
and at the end:
Finished lexical analyzer: pre.l (for: ..../file.c)
- in case the lexical analyzer has been translated with the -d option of lex / flex the above mentioned lines will be given as part of the lexical analyzer output (to stderr) and look like:
--entering lexical analyzer: pre.l (for: ..../file.c)
--finished lexical analyzer: pre.l (for: ..../file.c)
|
|
|
|
| |
warnings
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|