https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120968

            Bug ID: 120968
           Summary: Using global C name with import std recommends using
                    the same undeclared name
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: luigighiron at gmail dot com
  Target Milestone: ---

The following program demonstrates a strange diagnostic (compiled with C++23,
-fmodules, and when set up correctly to use import std):

import std;
int main(){
    uint32_t x;
}

Error (<source> is the name of the file on godbolt):

<source>:3:5: error: 'uint32_t' was not declared in this scope; did you mean
'uint32_t'?
    3 |     uint32_t x;
      |     ^~~~~~~~
      |     uint32_t

It doesn't seem that helpful to recommend using uint32_t when the program is
using uint32_t already and results in an error.

Reply via email to