Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

@Endcond not behaving as expected (missing warnings, missing output) #8393

Closed
lcmrvk opened this issue Feb 19, 2021 · 4 comments
Closed

@Endcond not behaving as expected (missing warnings, missing output) #8393

lcmrvk opened this issue Feb 19, 2021 · 4 comments
Labels

Comments

@lcmrvk
Copy link

lcmrvk commented Feb 19, 2021

Describe the bug

I'm including both of these issues here because I think they might be related.

  1. One is that the missing endcondition warning does is not reported in every case in which I'd
    expected to. It does get reported in some cases however.

See:

  • example1
  • example2
  • example3
  1. There was a bug \endcond errors not limited to a single file (Origin: bugzilla #624829) #3857 that was fixed in 1.7.2 where the fix automatically inserted an @endcond so that it does not affect content in files which include the file with the missing @endcond.

See:

  • example4

See below examples with their expected and actual behavior.

Expected behavior

example1:

todo:

  • remove @endcond in A.h which belongs to #define w

expected:

  • missing endcondition warning

result:

  • no missing @endcond warning, however @endcond seems to be added automatically to the end of the file because B.h (which includes A.h) is not affected
  • output is missing everything from A.h as expected

example2:

todo:

  • remove @endcond in B.h which belongs to #define k

expected:

  • missing endcondition warning

result:

  • warning is reported as expeced

  • #define l missing from output as expected


example3:

todo:

  • remove @endcond in A.h which belongs to #define y

expected:

  • missing endcondition warning

result:

  • no missing @endcond warning, however @endcond seems to be added automatically to the end of the file because B.h (which includes A.h) is not affected

  • #define x (from A.h) is correctly included in output


example4:

todo:

  • remove @endcond in A.h which belongs to #define z

expected:

  • missing endcondition warning

result:

  • missing @endcond warning reported
  • #define j (from B.h), which should be included in the output is missing
  • #define l is included in the output as expected

To Reproduce

The steps to reproduce the examples are given above.
The commands to be executed are as follows:

  1. cd <folder-with-atached-files>
  2. doxygen
  3. cd latex
  4. make

Additional packages that need to be installed are:

  • make
  • texlive-base
  • texlive-latex-extra

Version
doxygen version: 1.9.1
linux version: (tested in docker)

Distributor ID:	Debian
Description:	Debian GNU/Linux bullseye/sid
Release:	testing
Codename:	bullseye

doxygen-endcond-test.tar.gz

@albert-github
Copy link
Collaborator

In the current doxygen version (1.9.7) we get warnings about the missing @endcond for the examples 1, 3 and 4.
The example 2 is and was no problem (as also written in the issue).

We see though that with the example2 1, 3 and 4 we also get an incorrect warning like:

B.h:5: warning: Conditional section with label 'INCLUDE_INTERNAL_CODE' does not have a corresponding \endcond command within this file.

When a warning should be given it should not be B.h but A.h

albert-github added a commit to albert-github/doxygen that referenced this issue Jun 29, 2023
…s, missing output)

Corrected waring about file that included the incorrect file.
@albert-github
Copy link
Collaborator

I've just pushed a proposed patch, pull request #10156

@albert-github albert-github added the fixed but not released Bug is fixed in github, but still needs to make its way to an official release label Jul 2, 2023
@albert-github
Copy link
Collaborator

Code has been integrated in master on GitHub (please don't close the issue as this will be done at the moment of an official release).

@doxygen
Copy link
Owner

doxygen commented Aug 25, 2023

This issue was previously marked 'fixed but not released',
which means it should be fixed in doxygen version 1.9.8.
Please verify if this is indeed the case. Reopen the
issue if you think it is not fixed and please include any additional information
that you think can be relevant (preferably in the form of a self-contained example).

@doxygen doxygen removed the fixed but not released Bug is fixed in github, but still needs to make its way to an official release label Aug 25, 2023
@doxygen doxygen closed this as completed Aug 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants
@doxygen @albert-github @lcmrvk and others