[clang] [libclc] Added underline (PR #178468)
Shubham Sheelvant via cfe-commits
cfe-commits at lists.llvm.org
Wed Jan 28 09:02:49 PST 2026
https://github.com/shubhamsheelvant88 created https://github.com/llvm/llvm-project/pull/178468
Added a undreline to the anchor tags while hovering. click here :
https://github.com/shubhamsheelvant88/llvm-project.git
>From 9b10f27c3f8b1c1803b69c512e78d79f75bc3a41 Mon Sep 17 00:00:00 2001
From: shubham <shubhamsheelvant at gmail.com>
Date: Mon, 26 Jan 2026 14:29:31 +0530
Subject: [PATCH 1/3] removed underline from a tag and added styles like
bg,color and etc
---
clang/www/OpenProjects.html | 307 +++++++++++++++++++-----------------
clang/www/analyzer/menu.css | 1 -
clang/www/index.html | 31 +++-
libclc/www/index.html | 2 -
4 files changed, 189 insertions(+), 152 deletions(-)
diff --git a/clang/www/OpenProjects.html b/clang/www/OpenProjects.html
index 3e5e84b5b2ed4..95aa87cf9ab75 100755
--- a/clang/www/OpenProjects.html
+++ b/clang/www/OpenProjects.html
@@ -1,157 +1,170 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
+
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Clang - Open Projects</title>
<link type="text/css" rel="stylesheet" href="menu.css">
<link type="text/css" rel="stylesheet" href="content.css">
</head>
+
<body>
-<!--#include virtual="menu.html.incl"-->
-
-<div id="content">
-
-<h1>Open Clang Projects</h1>
-
-<p>Here are a few tasks that are available for anyone to work on, depending
-on what your interests are. This list is provided to generate ideas, it is not
-intended to be comprehensive. Please ask on
-<a href="https://discourse.llvm.org/c/clang">Discourse</a> for more specifics
-or to verify that one of these isn't already completed.</p>
-
-<ul>
-<li><b>Refresh and improve Clang's documentation</b>: Clang is inconsistent
-with documenting implementation-defined behaviors. We have significant
-documentation in the <a href="https://clang.llvm.org/docs/LanguageExtensions.html">
-Language Extensions</a> page, but the information is incomplete and the page is
-difficult to navigate. We would appreciate help with:
-<ul>
- <li>improving the way this information is presented to users,</li>
- <li><a href="https://llvm.org/docs/TableGen/">table generating</a>
- documentation where possible, such as for implementation limits or other
- target-specific information,</li>
- <li>adding documentation for currently
- <a href="https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Basic/AttrDocs.td">
- undocumented attributes</a>,</li>
- <li>documenting <a href="https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Basic/DiagnosticDocs.td">
- diagnostic group flags</a> (adding code examples of what is diagnosed, or
- other relevant information), or</li>
- <li>documenting <a href="https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Options/Options.td">
- command line options</a>, or</li>
- <li>help with completing other missing documentation.</li>
-</ul>
-These projects are independent of each other.</li>
-
-<li><b>Complete the investigation into Clang's C conformance</b>: Clang's
-<a href="c_status.html">C status page</a> contain a number of entries marked as
-<code>Unknown</code>. Completing the investigation involves adding
-<a href="https://github.com/llvm/llvm-project/tree/main/clang/test/C">test
-coverage</a> for the various standards papers and updating the documentation
-accordingly.
-</li>
-
-<li><b>Improve Clang's C and C++ standard conformance test coverage</b>:
-Clang's test suite is structured such that most tests are written to provide
-coverage for what part of the compiler the feature's implementation exists in;
-we have parsing tests in <code>clang/test/Parser</code>, and semantic analysis
-tests in <code>clang/test/Sema*</code>, etc. We also have tests written to
-provide coverage for the standard requirements (<code>clang/test/CXX</code> and
-<code>clang/test/C</code>). The standards coverage is not structured in a way
-that makes it easy to maintain as the standards change over time. No commercial
-conformance test suite has a license model suitable for open source projects,
-so we would appreciate help in improving the existing coverage we have both in
-terms of layout of the tests as well as in coverage of the various standard
-modes.</li>
-
-<li><b>Complete the investigation into Clang's C and C++ Defect Report
-conformance</b>: Separate from (but related to) general conformance testing is
-determining which <a href="c_dr_status.html">C defect reports</a> and
-<a href="cxx_dr_status.html">C++ defect reports</a> Clang implements. These
-lists currently have a number of entries marked as <code>Unknown</code>.
-Completing the investigation involves adding test coverage for
-<a href="https://github.com/llvm/llvm-project/tree/main/clang/test/C/drs">C</a>
-and
-<a href="https://github.com/llvm/llvm-project/tree/main/clang/test/CXX/drs">C++</a>
-defect reports and updating the documentation accordingly.</li>
-
-<li><b>Bug triage</b>: Clang's <a href="https://github.com/llvm/llvm-project/issues">
-issue tracker</a>currently has over 20,000 open issues, many of which are not
-appropriately tagged, are no longer reproducible, could use a reduced test case,
-or otherwise needs some manual interaction. We can always use help with
-<a href="https://llvm.org/docs/BugLifeCycle.html#triaging-bugs">bug triage and
-issue tracker maintenance</a>.
-</li>
-
-<li><b>Improve build times with Clang</b>: the time it takes Clang to process a
-translation unit is very important to our users; the lower the build time, the
-better the overall user experience. It would be good to improve Clang's
-performance as well as to find ways to proactively alert us when we've
-introduced a change that has significant negative impact on build times.</li>
-
-<li><b>Improve clang-doc</b>: Clang's library-based design allows it to be used
-by a variety of tools that reason about source code.
-<a href="https://clang.llvm.org/extra/clang-doc.html">clang-doc</a> is one
-great application of this functionality, which generates code documentation
-from source code. The tool is in early stages of development and could use more
-dedicated effort to complete the implementation.</li>
-
-<li><b>Self-testing using clang</b>: There are several neat ways to
-improve the quality of clang by self-testing. Some examples:
-<ul>
- <li>Improve the reliability of AST printing and serialization by
- ensuring that the AST produced by clang on an input doesn't change
- when it is reparsed or unserialized.
-
- <li>Improve parser reliability and error generation by automatically
- or randomly changing the input checking that clang doesn't crash and
- that it doesn't generate excessive errors for small input
- changes. Manipulating the input at both the text and token levels is
- likely to produce interesting test cases.
-</ul>
-</li>
-
-<li><b>Continue work on C++20, C++23, C++2c, and C23 support</b>:
- There are still several C++20 features to complete, and work has begun on
- supporting the latest language standards. Please see the
- <a href="cxx_status.html">C++ status report page</a> to find out what is
- missing.</li>
-
-<li><b>StringRef'ize APIs</b>: A thankless but incredibly useful project is
-StringRef'izing (converting to use <tt>llvm::StringRef</tt> instead of <tt>const
-char *</tt> or <tt>std::string</tt>) various clang interfaces. This generally
-simplifies the code and makes it more efficient.</li>
-
-<li><b>Configuration Manager</b>: Clang/LLVM works on a large number of
-architectures and operating systems and can cross-compile to a similarly large
-number of configurations, but the pitfalls of choosing the command-line
-options, making sure the right sub-architecture is chosen and that the correct
-optional elements of your particular system can be a pain.
-
-<p>A tool that would investigate hosts and targets, and store the configuration
-in files that can later be used by Clang itself to avoid command-line options,
-especially the ones regarding which target options to use, would greatly alleviate
-this problem. A simple tool, with little or no dependency on LLVM itself, that
-will investigate a target architecture by probing hardware, software, libraries
-and compiling and executing code to identify all properties that would be relevant
-to command-line options (VFP, SSE, NEON, ARM vs. Thumb etc), triple settings etc.</p>
-
-<p>The first stage is to build a CFLAGS for Clang that would produce code on the
-current Host to the identified Target.</p>
-
-<p>The second stage would be to produce a configuration file (that can be used
-independently of the Host) so that Clang can read it and not need a gazillion
-of command-line options. Such file should be simple JSON / INI or anything that
-a text editor could change.</p></li>
-</ul>
-
-<p>If you hit a bug with Clang, it is very useful for us if you reduce the code
-that demonstrates the problem down to something small. There are many ways to
-do this; ask on <a href="https://discourse.llvm.org/c/clang">Discourse</a>,
-<a href="https://discord.com/channels/636084430946959380/636725486533345280">Discord</a>
-(<a href="https://discord.gg/xS7Z362">invite link</a>) for advice.</p>
-
-</div>
+ <!--#include virtual="menu.html.incl"-->
+
+ <div id="content">
+
+ <h1>Open Clang Projects</h1>
+
+ <p>Here are a few tasks that are available for anyone to work on, depending
+ on what your interests are. This list is provided to generate ideas, it is not
+ intended to be comprehensive. Please ask on
+ <a href="https://discourse.llvm.org/c/clang">Discourse</a> for more specifics
+ or to verify that one of these isn't already completed.
+ </p>
+
+ <ul>
+ <li><b>Refresh and improve Clang's documentation</b>: Clang is inconsistent
+ with documenting implementation-defined behaviors. We have significant
+ documentation in the <a href="https://clang.llvm.org/docs/LanguageExtensions.html">
+ Language Extensions</a> page, but the information is incomplete and the page is
+ difficult to navigate. We would appreciate help with:
+ <ul>
+ <li>improving the way this information is presented to users,</li>
+ <li><a href="https://llvm.org/docs/TableGen/">table generating</a>
+ documentation where possible, such as for implementation limits or other
+ target-specific information,</li>
+ <li>adding documentation for currently
+ <a href="https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Basic/AttrDocs.td">
+ undocumented attributes</a>,
+ </li>
+ <li>documenting <a
+ href="https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Basic/DiagnosticDocs.td">
+ diagnostic group flags</a> (adding code examples of what is diagnosed, or
+ other relevant information), or</li>
+ <li>documenting <a
+ href="https://github.com/llvm/llvm-project/blob/main/clang/include/clang/Options/Options.td">
+ command line options</a>, or</li>
+ <li>help with completing other missing documentation.</li>
+ </ul>
+ These projects are independent of each other.
+ </li>
+
+ <li><b>Complete the investigation into Clang's C conformance</b>: Clang's
+ <a href="c_status.html">C status page</a> contain a number of entries marked as
+ <code>Unknown</code>. Completing the investigation involves adding
+ <a href="https://github.com/llvm/llvm-project/tree/main/clang/test/C">test
+ coverage</a> for the various standards papers and updating the documentation
+ accordingly.
+ </li>
+
+ <li><b>Improve Clang's C and C++ standard conformance test coverage</b>:
+ Clang's test suite is structured such that most tests are written to provide
+ coverage for what part of the compiler the feature's implementation exists in;
+ we have parsing tests in <code>clang/test/Parser</code>, and semantic analysis
+ tests in <code>clang/test/Sema*</code>, etc. We also have tests written to
+ provide coverage for the standard requirements (<code>clang/test/CXX</code> and
+ <code>clang/test/C</code>). The standards coverage is not structured in a way
+ that makes it easy to maintain as the standards change over time. No commercial
+ conformance test suite has a license model suitable for open source projects,
+ so we would appreciate help in improving the existing coverage we have both in
+ terms of layout of the tests as well as in coverage of the various standard
+ modes.
+ </li>
+
+ <li><b>Complete the investigation into Clang's C and C++ Defect Report
+ conformance</b>: Separate from (but related to) general conformance testing is
+ determining which <a href="c_dr_status.html">C defect reports</a> and
+ <a href="cxx_dr_status.html">C++ defect reports</a> Clang implements. These
+ lists currently have a number of entries marked as <code>Unknown</code>.
+ Completing the investigation involves adding test coverage for
+ <a href="https://github.com/llvm/llvm-project/tree/main/clang/test/C/drs">C</a>
+ and
+ <a href="https://github.com/llvm/llvm-project/tree/main/clang/test/CXX/drs">C++</a>
+ defect reports and updating the documentation accordingly.
+ </li>
+
+ <li><b>Bug triage</b>: Clang's <a href="https://github.com/llvm/llvm-project/issues">
+ issue tracker</a>currently has over 20,000 open issues, many of which are not
+ appropriately tagged, are no longer reproducible, could use a reduced test case,
+ or otherwise needs some manual interaction. We can always use help with
+ <a href="https://llvm.org/docs/BugLifeCycle.html#triaging-bugs">bug triage and
+ issue tracker maintenance</a>.
+ </li>
+
+ <li><b>Improve build times with Clang</b>: the time it takes Clang to process a
+ translation unit is very important to our users; the lower the build time, the
+ better the overall user experience. It would be good to improve Clang's
+ performance as well as to find ways to proactively alert us when we've
+ introduced a change that has significant negative impact on build times.</li>
+
+ <li><b>Improve clang-doc</b>: Clang's library-based design allows it to be used
+ by a variety of tools that reason about source code.
+ <a href="https://clang.llvm.org/extra/clang-doc.html">clang-doc</a> is one
+ great application of this functionality, which generates code documentation
+ from source code. The tool is in early stages of development and could use more
+ dedicated effort to complete the implementation.
+ </li>
+
+ <li><b>Self-testing using clang</b>: There are several neat ways to
+ improve the quality of clang by self-testing. Some examples:
+ <ul>
+ <li>Improve the reliability of AST printing and serialization by
+ ensuring that the AST produced by clang on an input doesn't change
+ when it is reparsed or unserialized.
+
+ <li>Improve parser reliability and error generation by automatically
+ or randomly changing the input checking that clang doesn't crash and
+ that it doesn't generate excessive errors for small input
+ changes. Manipulating the input at both the text and token levels is
+ likely to produce interesting test cases.
+ </ul>
+ </li>
+
+ <li><b>Continue work on C++20, C++23, C++2c, and C23 support</b>:
+ There are still several C++20 features to complete, and work has begun on
+ supporting the latest language standards. Please see the
+ <a href="cxx_status.html">C++ status report page</a> to find out what is
+ missing.
+ </li>
+
+ <li><b>StringRef'ize APIs</b>: A thankless but incredibly useful project is
+ StringRef'izing (converting to use <tt>llvm::StringRef</tt> instead of <tt>const
+ char *</tt> or <tt>std::string</tt>) various clang interfaces. This generally
+ simplifies the code and makes it more efficient.</li>
+
+ <li><b>Configuration Manager</b>: Clang/LLVM works on a large number of
+ architectures and operating systems and can cross-compile to a similarly large
+ number of configurations, but the pitfalls of choosing the command-line
+ options, making sure the right sub-architecture is chosen and that the correct
+ optional elements of your particular system can be a pain.
+
+ <p>A tool that would investigate hosts and targets, and store the configuration
+ in files that can later be used by Clang itself to avoid command-line options,
+ especially the ones regarding which target options to use, would greatly alleviate
+ this problem. A simple tool, with little or no dependency on LLVM itself, that
+ will investigate a target architecture by probing hardware, software, libraries
+ and compiling and executing code to identify all properties that would be relevant
+ to command-line options (VFP, SSE, NEON, ARM vs. Thumb etc), triple settings etc.</p>
+
+ <p>The first stage is to build a CFLAGS for Clang that would produce code on the
+ current Host to the identified Target.</p>
+
+ <p>The second stage would be to produce a configuration file (that can be used
+ independently of the Host) so that Clang can read it and not need a gazillion
+ of command-line options. Such file should be simple JSON / INI or anything that
+ a text editor could change.</p>
+ </li>
+ </ul>
+
+ <p>If you hit a bug with Clang, it is very useful for us if you reduce the code
+ that demonstrates the problem down to something small. There are many ways to
+ do this; ask on <a href="https://discourse.llvm.org/c/clang">Discourse</a>,
+ <a href="https://discord.com/channels/636084430946959380/636725486533345280">Discord</a>
+ (<a href="https://discord.gg/xS7Z362">invite link</a>) for advice.
+ </p>
+
+ </div>
</body>
-</html>
+
+</html>
\ No newline at end of file
diff --git a/clang/www/analyzer/menu.css b/clang/www/analyzer/menu.css
index 05c1bbfc82db7..e3f1d1f5d39b4 100644
--- a/clang/www/analyzer/menu.css
+++ b/clang/www/analyzer/menu.css
@@ -49,4 +49,3 @@
.menubar li:hover ul, li.over ul { /* lists nested under hovered list items */
display: block;
}
-
diff --git a/clang/www/index.html b/clang/www/index.html
index 465a6a6d29dc7..6d6af3a621eb2 100755
--- a/clang/www/index.html
+++ b/clang/www/index.html
@@ -7,12 +7,38 @@
<title>Clang C Language Family Frontend for LLVM</title>
<link type="text/css" rel="stylesheet" href="menu.css">
<link type="text/css" rel="stylesheet" href="content.css">
+ <style>
+ a:hover{
+ text-decoration: none;
+ }
+ h2:hover{
+ height:30px;
+ width:250px;
+ text-decoration:underline ;
+ color:rgb(0, 157, 255);
+ background-color: whitesmoke;
+ border: 1px solid black;
+ border-radius:5px;
+ }
+ h1:hover::first-letter{
+ color: rgb(0, 166, 255);
+ }
+
+/* div{
+ height:600px;
+ width:300px;
+ background-color: gold;
+ display: inline-block;
+
+ }*/
+
+ </style>
</head>
<body>
<!--#include virtual="menu.html.incl"-->
<div id="content">
<!--*********************************************************************-->
- <h1>Clang: a C language family frontend for LLVM</h1>
+ <h1>Clang: A C language family frontend for LLVM</h1>
<!--*********************************************************************-->
<p>The Clang project provides a language front-end and tooling infrastructure
@@ -29,12 +55,13 @@ <h2 id="goals">Features and Goals</h2>
<p>Some of the goals for the project include the following:</p>
<p><b><a href="features.html#enduser">End-User Features</a></b>:</p>
-
+<div>
<ul>
<li>Fast compiles and low memory use</li>
<li>Expressive diagnostics (<a href="diagnostics.html">examples</a>)</li>
<li>GCC & MSVC compatibility</li>
</ul>
+ </div>
<p><b><a href="features.html#applications">Utility and
Applications</a></b>:</p>
diff --git a/libclc/www/index.html b/libclc/www/index.html
index 3ad323b6839bc..b0e33bd858833 100644
--- a/libclc/www/index.html
+++ b/libclc/www/index.html
@@ -35,8 +35,6 @@ <h1>libclc</h1>
allowing the target to override the generic implementation at the
granularity of individual functions.
</p>
-
-<p>
libclc currently supports the AMDGCN, and R600 and NVPTX targets, but
support for more targets is welcome.
</p>
>From 86ee376da393c8c4c96d4b64d8ee5a1002572f4e Mon Sep 17 00:00:00 2001
From: shubham <shubhamsheelvant at gmail.com>
Date: Tue, 27 Jan 2026 22:47:50 +0530
Subject: [PATCH 2/3] improve styling in html
---
clang/www/analyzer/menu.css | 4 ++++
clang/www/cxx_status.html | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/clang/www/analyzer/menu.css b/clang/www/analyzer/menu.css
index e3f1d1f5d39b4..7ebc234decf79 100644
--- a/clang/www/analyzer/menu.css
+++ b/clang/www/analyzer/menu.css
@@ -49,3 +49,7 @@
.menubar li:hover ul, li.over ul { /* lists nested under hovered list items */
display: block;
}
+
+a{
+ text-decoration: none;
+}
diff --git a/clang/www/cxx_status.html b/clang/www/cxx_status.html
index 30da7a636fda6..76e796bc9dfa5 100755
--- a/clang/www/cxx_status.html
+++ b/clang/www/cxx_status.html
@@ -15,6 +15,10 @@
th { background-color: #FFDDAA }
td { vertical-align: middle }
tt { white-space: nowrap }
+ a{ text-decoration: none;}
+ h1{ background-color: lightblue;
+ color :white;
+ border: 2px solid black;}
</style>
</head>
<body>
>From d308b05f6e048607c497bed7de6a9fbeedf43049 Mon Sep 17 00:00:00 2001
From: shubham <shubhamsheelvant at gmail.com>
Date: Wed, 28 Jan 2026 22:26:15 +0530
Subject: [PATCH 3/3] added underline to the links
---
clang/www/analyzer/menu.css | 5 +++++
clang/www/cxx_status.html | 7 +++++++
2 files changed, 12 insertions(+)
diff --git a/clang/www/analyzer/menu.css b/clang/www/analyzer/menu.css
index 7ebc234decf79..5a8c4eb19070f 100644
--- a/clang/www/analyzer/menu.css
+++ b/clang/www/analyzer/menu.css
@@ -53,3 +53,8 @@
a{
text-decoration: none;
}
+
+table tr td a:hover{
+ text-decoration: underline;
+
+}
diff --git a/clang/www/cxx_status.html b/clang/www/cxx_status.html
index 76e796bc9dfa5..df6b89039763a 100755
--- a/clang/www/cxx_status.html
+++ b/clang/www/cxx_status.html
@@ -19,6 +19,13 @@
h1{ background-color: lightblue;
color :white;
border: 2px solid black;}
+ table tr td a:hover{
+ text-decoration: underline;
+
+}
+
+
+
</style>
</head>
<body>
More information about the cfe-commits
mailing list