Skip to content

Doxygen @code block not formatted if without leading spaces; when formatted includes leading * and has 'escape' \. #14430

@msftrncs

Description

@msftrncs

Using C/C++ v1.32.2

Some observations of the Doxygen support for @code or \code blocks:

  /**
   * @brief Set or clear the referenced bit.
   * 
   * @param value true to set the bit, false to clear it.
   * @return Reference to this BitReference object.
   * 
   * @code
   * uint8_t flags = 0b00000000;
   * BitReference<uint8_t> bit(flags, 2);
   * bit = true;  // flags == 0b00000100
   * bit = false; // flags == 0b00000000
   * @endcode
   */

Without 4 leading spaces (this only has 2) the code block is not rendered.

Image

With 4 leading spaces it looks like this:

Image

I might have expected:

  • A Code: header to preface the code block.
  • The *'s from the Doxygen block to not be present (shown as \*).
  • the extraneous \ that appear to be trying to escape *, _, < and > (and who knows what else) to not be present in the render.
  • The last line (the * before the @endcode) to not be included in the code block.

Metadata

Metadata

Assignees

Labels

Feature: Doc commentsAn issue related to code comments shown in hover, completion, and signature help.bug

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions