<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/98463>98463</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [clang] Feature request: Allow qualified names in namespace definitions
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          ay0ks
      </td>
    </tr>
</table>

<pre>
    Example code:
Before:
```cpp
namespace fx
{
    namespace multidimensional
    {
        nameapace details
        {
 // it can be even more nested than this
        }

 class test_class
        {};
 }
}
```
After:
```cpp
namespace fx::multidimensional
{
 namespace details
    {
        // nothing more than just a qualified name
    }

    class test_class
 {};
}```
https://en.cppreference.com/w/cpp/language/namespace#Namespaces

This is against the language standard, but can be implemented as a compiler extension.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMk8-OozgQxp_GXEodgYEEDhzozXLc095HhSnAPcbQLtN_3n4EJKHTmZFGQqJs11f293MZmXVniQqRPov0HODs-9EV-Bn-5KAem8_i3w8cJkOgxoZEXIrwLMLymdrR7UNxDLdPTdM2Y3EgnlARtB-XnNPzFgAA7MvDbLxu9ECW9WjR7Dl3gqsIV1FDHrXh--U9X8hKyAq0B4UWagJ6IwvD6AgssacGfI8WfK8fSpwvh92mlUFm8MT-xxo-bng6i_i27U19C65ctmHZenJ_Cy0uRVz-ns7udFc8IHnAd6FiR99r2204Vg4vM3tAeJ3R6FZTs1b9WugeCsCfuHwDssT3AHrvJ16crUche1DT5KglR1bRQY2DkNW7kNVCRFYGbTdjR0JWN59Cxv9dY_56rP97zaAZsENt2YPvCa4FgD3aBl0j5D9Qz7e20EtjD2SXjkAGBDUOkzbkgD78hvwQNEXc5HGOARXRSYbH_JhFMugLFam8zo4nmUWnPItIpbFMWjyl2GJKaR3oQoYyCU9RFEUyjOQhw-SYp5hmdZQk6TERSUgDanMw5m04jK4LNPNMRZ4lxzgwWJPh9V1KqRYrQsrlibpiyX-q545FEhrNnvcKXnuzPuZNkZ6hIvSzI3D0OhN7EZdQGjO-f7tvBm3v2qnVVns9Wg5mZ4r7m-u07-f6cmHL3pff0-TGF1JeyGq1wkJWm5u3Qv4KAAD__4M_UQ0">