This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug ada/55119] New: Ada.Directories only handles files under 2GB


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55119

             Bug #: 55119
           Summary: Ada.Directories only handles files under 2GB
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ada
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: simon@pushface.org


In adaint.c, __gnat_stat_to_attr says

    /* st_size may be 32 bits, or 64 bits which is converted to long. We
       don't return a useful value for files larger than 2 gigabytes in
       either case. */
    attr->file_length = statbuf.st_size;  /* all systems */

where attr->file_length is a long.

This fails with large files on 64-bit filesystems (eg, Mac OS X).

I _think_ that a simple fix would be, in adaint.h, to define
file_attributes.file_length as a long long.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]