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

            Bug ID: 111909
           Summary: Filename case sensitivity defaulted wrongly on macOS
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ada
          Assignee: unassigned at gcc dot gnu.org
          Reporter: simon at pushface dot org
                CC: dkm at gcc dot gnu.org
  Target Milestone: ---

Created attachment 56167
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56167&action=edit
Demo of code to determine case sensitivity

In gcc/ada/adaint.c(__gnat_get_file_names_case_sensitive), the
assumption for __APPLE__ is that file names are case-insensitive
unless __arm__ or __arm64__ are defined, in which case file names are
declared case-sensitive.

The associated comment is
   "By default, we suppose filesystems aren't case sensitive on
   Windows and Darwin (but they are on arm-darwin)."

This change was made in commit b54d1d39d30c (in github gcc-mirror).

This means that on aarch64-apple-darwin, file names are declared
case-sensitive.

I understand that GCC does not currently support iOS/tvOS/watchOS, so
we could assume macOS.

On macOS, the default filesystem is case-insensitive; changing this
function to reflect that would be an improvement. However, it's
possible to create case-sensitive filesystems, and some users do when
dealing with OSS code. It would be good to check the actual filesystem
in use.

Reply via email to