highlightjs/highlight.js

(cpp) Keywords followed by parens are treated as `built_in`

Open

#3,980 opened on Jan 31, 2024

View on GitHub
 (13 comments) (0 reactions) (0 assignees)JavaScript (22,960 stars) (3,497 forks)batch import
buggood first issuehelp welcomelanguage

Description

Describe the issue Keywords, such as static_assert, sizeof, etc. are typically followed by parentheses. static_assert; will be highlighted as if it's a keyword, but static_assert(true); is highlighted as a built_in.

image

Which language seems to have the issue?

<code class="hljs cpp">
<code class="hljs c++">

Are you using highlight or highlightAuto?

highlight, I think?

Sample Code to Reproduce

In reveal.js, with a freshly-downloaded hljs, add the following:

<pre><code class="hljs c++" data-trim data-noescape data-line-numbers style="overflow: visible;">
  static_assert; // highlighted as keyword
  static_assert(true); // highlighted as built_in
</code></pre>

Expected behavior

Keywords continue to use their keyword colour when followed by parens.

Contributor guide

(cpp) Keywords followed by parens are treated as `built_in` · highlightjs/highlight.js#3980 | Good First Issue