| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Fix spelling on various files pertaining to core Perl.
|
|
|
|
|
|
|
|
|
| |
This is broken out so it is easier for Tux to find and merge with
metaconfig.
View this patch with -w and you will see "no changes" except for
config_h.SH and Porting/config_h.pl both which needed to be changed to
ensure that they produce output that doesn't replicate the problem.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In GH 20435 many typos in our C code were corrected. However, this pull
request was not applied to blead and developed merge conflicts. I
extracted diffs for the individual modified files and applied them with
'git apply', excepting four files where patch conflicts were reported.
Those files were:
handy.h
locale.c
regcomp.c
toke.c
We can handle these in a subsequent commit. Also, had to run these two
programs to keep 'make test_porting' happy:
$ ./perl -Ilib regen/uconfig_h.pl
$ ./perl -Ilib regen/regcomp.pl regnodes.h
|
|
|
|
|
|
|
|
|
|
|
|
| |
These macros were defined in perl.h using preprocessor conditionals,
but determining wheter I32 is "int" or "long" is pretty hard with
preprocessor, when INTSIZE == LONGSIZE. The Configure script
should know exact underlying type of I32, so it should be able to
determine whether %d or %ld shall be used to format I32 value
more robustly.
Various pre-configured files, such as uconfig.h, are updated to
align with this.
|
|
|
|
|
|
|
|
| |
This allows us to enforce API boundaries and potentially enables
compiler optimisations.
We've been always hiding non-public symbols on Windows. This commit
brings that to the other platforms.
|
|
|
|
|
|
| |
Ultrix has been removed. Ultrix was the native Unix-like operating
system for various Digital Equipment Corporation machines. Its final
release was in 1995.
|
| |
|
| |
|
|
|
|
| |
We also provbe for gcc's earlier syntax, __thread.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On FreeBSD dev_t (and hence the st_dev member of struct stat) is an
unsigned 64-bit integer, and the previous simple PUSHi() corrupted
that.
A previous version of this reflected the st_ino code and implemented
our own number to string conversion, but a system with such a large
st_dev should be assumed to have inttypes.h, and an intmax_t which is
no smaller than st_dev.
The st_ino code could probably be changed similarly, but 64-bit inode
numbers are not a new thing, so it may be riskier.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This header was originally only needed for builds on darwin and
FreeBSD, but was being included whenever it was detected.
This has caused problems when what was an internal header was
removed (from glibc) and in general wasn't needed anyway.
On FreeBSD only localeconv_l() requires xlocale.h, so we test
specifically for that.
|
|
|
|
| |
Several new probes have been added.
|
|
|
|
|
|
|
|
|
|
|
| |
This probe has been available without my realizing it had been merged.
Some compilers, chiefly IBM, use only integer-size bitfields, warning
when presented with other-sized ones. Allowing other-sized fields is an
extension to the C standard.
These warnings don't affect the correctness of the code generated, but
very many are generated per run, potentially overwhelming the reader
into not noticing warnings that are important.
|
| |
|
|
|
|
|
|
| |
Most implementations do not have a problem with two getenv()'s running
simultaneously in different threads. But Posix doesn't require such
good behavior. This adds a simple probe to test the current system.
|
|
|
|
|
|
| |
This stops autodoc.pl complaining that:
USE_STRICT_BY_DEFAULT has no documentation
|
|
|
|
|
|
|
|
|
| |
For: https://github.com/Perl/perl5/pull/18201
Committer: Samanta Navarro is now a Perl author.
To keep 'make test_porting' happy: Increment $VERSION in several files.
Regenerate uconfig.h via './perl -Ilib regen/uconfig_h.pl'.
|
|
|
|
|
|
|
|
| |
Do not set strict by default on -e or -E
This is a development only feature to allow us to clean up blead.
./Configure -Dusedevel -des -Dusedefaultstrict
|
| |
|
|
|
|
| |
Thank you Karl!
|
|
|
|
| |
See https://github.com/Perl/metaconfig/pull/66/
|
|
|
|
|
|
|
|
|
|
|
|
| |
For some reason this comment was not added by commit
https://github.com/Perl/perl5/commit/e849841dca2a8b11119997585f795647c52cdcdf
but it gets included when regenerating from metaconfig, stemming from
https://github.com/Perl/metaconfig/commit/829ae3555af6c3549169acf1fab1bd089b442e47
(Also includes regenerated uconfig.h by regen/uconfig_h.pl)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Quoting Porting/config_h.pl :
# This script is run just after metaconfig, and it
# is run ONLY ONCE. Not to be used afterwards
It looks like e849841dca2a8b11119997585f795647c52cdcdf accidentally did
re-run it, resulting in some duplication in config_h.SH.
(Also includes regenerated uconfig.h by regen/uconfig_h.pl)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Typos in documentation and inline comments.
Pursuant to discussion on openbsd-tech list:
https://marc.info/?t=157678644800005&r=1&w=2
https://marc.info/?t=157678570300002&r=1&w=2
For:
https://github.com/Perl/perl5/issues/17379
https://github.com/Perl/perl5/pull/17380
Committer:
Bryan Stenson is now a Perl author.
Regenerate uconfig.sh via: perl regen/uconfig_h.pl
|
|
|
|
|
|
|
|
| |
A probe for wcrtomb() and one for attribute always inline have been
added, and the ones for:
1) checking if there is a C backtrace facility; and
2) character data alignedness
have been revised
|
|
|
|
|
|
|
|
| |
The #define set in Configure and used in locale.c and util.c is actually
USE_C_BACKTRACE.
Pointed out by NormW in
https://www.nntp.perl.org/group/perl.perl5.porters/2018/04/msg250441.html
|
| |
|
|
|
|
| |
This corresponds to metaconfig commit 70210eb08b2643bfce98cfa92a3ee52c613dfa56
|
|
|
|
| |
This also now notes some behavior of setlocale
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The metaconfig probe for <db.h> previously relied on the d_const symbol set
by the "const" probe, so generating Configure here has been done against
metaconfig commit 1204d4627a06b11f16620188f3fa83159ed35fd9 which changes
that.
Thanks to khw++ for pointing out this oversight in my attempt last year to
make the codebase rely on C89.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of the change here comes from a single unit being moved in the
generated Configure, but there are some substantive changes:
- config_h.SH was missing HAS_DUPLOCALE and d_duplocale
- d_duplocale was also missing from the platform-specific config-var files
This still doesn't quite ensure that rebuilding Configure makes no changes,
because there are differences to nl_langinfo() handling that need a change
in our metaconfig units. That will come next.
|
|
|
|
| |
I am aware that this might break a few tests
|
|
|
|
|
| |
This is another file descriptor creating function that's needed as an
O_CLOEXEC-handling variant of an existing function.
|
|
|
|
|
| |
These will shortly be used to implement I/O operations that create file
descriptors with the FD_CLOEXEC flag set atomically.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
C89 does not in fact define snprintf() or vsnprintf(), and we must therefore
probe for the existence of those functions before trying to use them.
khw++ for pointing out my earlier error.
This reverts part or all of each of the following commits:
13d66b05c6163c3514774d3d11da5f3950e97e98 Rely on C89 vsnprintf()
e791399041815a1a45cea3c7f277c7045b96e51b Rely on C89 snprintf()
adf7d503e55721c500f0bf66560b8f5df7966fe7 pod/perlhacktips.pod: remove some outdated portability notes
|
|
|
|
| |
This requires a corresponding change in the metaconfig units.
|
|
|
|
| |
It's only needed on systems without C89 <string.h>, which we rely on anyway.
|
| |
|
|
|
|
| |
This requires a corresponding change in the metaconfig units.
|
|
|
|
| |
This requires a corresponding change to the metaconfig units.
|
|
|
|
|
| |
All the information it contains can be gleaned more readily from C89
<limits.h> and <float.h>.
|
|
|
|
|
|
|
|
|
| |
I would like to be able to assume that we have long doubles, and therefore
that LDBL_DIG and friends are all defined too. But it seems that we may
still support some platforms which are otherwise C89, but don't have even
trivial long-double support; in particular, HP/UX 10 apparently uses a
struct of four uint32_t values as long double, but doesn't support other
bits, and confuses the Configure probe that looks for quadmath.
|
|
|
|
| |
This requires newer metaconfig units that also rely on C89 <float.h>.
|