Skip to content

inode numbers can exceed range of perl integers #19489

@hvds

Description

@hvds

As determined in discussion of #18788, it is possible for a filesystem to use 64 bit inodes (and for perl to handle them correctly); however if perl is built with 32-bit integers it is not safe to treat them as numbers, even for an equality check.

Areas that were affected by this include:

  • File::Copy (fixed in v2.36 by 76d2194)
  • PathTools (fixed in v3.81 by 73a0855)
  • ExtUtils::MakeMaker (fixed in v7.64, incorporated at d58d6b4)

Partially related, ./Configure was extended to record the size and signedness of struct stat.st_dev in 9b56997, allowing a bug in stat() to be fixed.

@tonycoz does that cover all the changes you know of? Are there any more issues yet to be fixed?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions