Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
GitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
lround() is not exported from POSIX #15260
POSIX.pm implements lround(), but doesn't export it. It's too late in the freeze for this to be fixed for 5.24, so it should be added to @EXPORT and to the relevant export tag early in the 5.25 cycle. In the mean time, commit 25a9f0e adds it to @EXPORT_OK, so callers who want to use it can at least import it by explicit name.
On Sat Apr 02 04:01:46 2016, arc wrote:
Reading this makes me wonder:
Are there other functions besides lround() implemented in the POSIX module but not exported?
Do we have any sort of policy to determine which should be in @EXPORT and which should only be in @EXPORT_OK?
(ISTR discussions in the past which complained that POSIX.pm automatically exported too many functions.)
Thank you very much.
James E Keenan via RT <firstname.lastname@example.org> [2016-04-02 04:29:24 -0700]:
Fwiw: Around a year ago, I was doing some work that required importing
James E Keenan via RT wrote:
We seem to be de facto following a policy that @EXPORT is frozen for
Yeah. I'm no fan of @EXPORT in any case, but POSIX.pm particularly has
* Zefram <email@example.com> [2016-04-02 16:23]:
I added the infrastructure to have @EXPORT differ from @EXPORT_OK due to
I also brought up the of policy question at that time, and then recorded
# adding new functions to EXPORT is a BACKWARD COMPATIBILITY BREAKING CHANGE
… on the grounds that a new PFX_SHOUTYCONSTANT is extremely unlikely to
I’m not sure any more that this is a sufficiently prominent place for
lround() is in the :math_h_c99 export tag as of decf70b. Three subsequent commits ensure that several other missing symbols are exported. Finally, a26223c adds a test to ensure that every symbol in the %POSIX:: stash that isn't part of the POSIX.pm implementation is exported in some way.