This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug ada/55119] New: Ada.Directories only handles files under 2GB
- From: "simon at pushface dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 29 Oct 2012 15:56:17 +0000
- Subject: [Bug ada/55119] New: Ada.Directories only handles files under 2GB
- Auto-submitted: auto-generated
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.