summaryrefslogtreecommitdiff
path: root/x2p
Commit message (Collapse)AuthorAgeFilesLines
* Remove x2pLeon Timmermans2014-05-2918-11310/+0
| | | | | This removes find2perl, s2p and a2p from core. They have all been released to CPAN as separate distributions.
* remove comment that no longer appliesTony Cook2014-05-291-1/+0
|
* Pointers set but then (immediately or very shortly) overwritten.Jarkko Hietaniemi2014-05-292-3/+2
| | | | | | Fix for Coverity perl5 CIDs 29203, 29207, 29211, 29214, 29217, 29218, 29222: Unused pointer value (UNUSED_VALUE) Pointer foo returned by bar() is overwritten.
* Stop using $run for anything other than testing compiled tests in Configure.Jess Robinson2014-01-221-1/+1
| | | | When cross-compiling we want to run miniperl etc on the compile host, not the test target
* fix off-by one error in a2pPhilip Guenther2013-10-181-1/+1
| | | | | | | The str_gets() function, when encountering a newline character, checked to see if the previous char was a \ escape. For a blank line, the check would read the char at the position one before the start of the buffer. There was a test to avoid this, but it was off-by-one.
* Stop using VOIDUSED in the headers.Nicholas Clark2013-09-161-2/+0
| | | | | | VOIDUSED was provided by metaconfig to work around pre-ANSI compilers that didn't support all uses of the void type. We've been mandating a proper ANSI C89 compiler for at least a decade, so we don't need this any more.
* [perl #113054] find2perl mistranslates fileglob ? to regex .?Tony Cook2013-08-211-1/+2
| | | | fix and un-TODO the test
* Remove the unused env parameter from a2p's main, and the associated pragma.Nicholas Clark2013-06-051-5/+1
| | | | | | | | a2p's main has had the traditional Unix third parameter (env) forever. Commit 24801a4b9a14a562 in May 2005 increased the strictness of the Tru64 compiler, and added pramgas where necessary to counter its warnings. However, a2p's main doesn't actually *use* the env parameter, so a better solution is to remove it. Which means that the pragma can be removed too.
* fix various podcheck nitsDavid Golden2013-05-231-4/+0
|
* Simplify x2p's Makefile.Nicholas Clark2013-05-201-14/+2
| | | | | | | | | | | | | Eliminate plexe and plc, which relate to tests for the compiler and were added as part of commit 52cebf5efc9883c7 in May 1988. The compiler was removed by commit de1254415ffeb03b in Sept 2006. The files a2p.man and s2p.man were removed with Perl 5.000. The macros 'public', 'private' and 'util' mirror the structure of the top level Makefile.SH. However, x2p only ever used 'public', so simplify things by inlining the value of 'public' in the only place that uses it. 'addedbyconf' now only contains the value of 'plextract', so use the latter directly in the one place that had used 'addedbyconf'.
* Remove rules to delete *.loadmap and *.prelmap files, generated on VM/ESANicholas Clark2013-05-201-2/+1
| | | | | | These rules to clean up properly on VM/ESA were added in Oct 1998 by perforce changes 1961, 1962 and 1963 in the confperl branch. VM/ESA support was removed by commit 043fec90e88a2e23 in Aug 2012.
* Add x2p/Makefile.SH to the *.SH files processed by the top level Makefile.Nicholas Clark2013-05-201-4/+1
| | | | | This makes the top level Makefile responsible for deleting x2p/Makefile. With this, we can eliminate the 'sh' and 'shextract' from x2p's Makefile.
* Remove the now unused 'shlist' Makefile targets.Nicholas Clark2013-05-201-3/+0
|
* Eliminate x2p/cflags.SH. x2p's Makefile can use ../cflagsNicholas Clark2013-05-202-108/+4
| | | | x2p/Makefile is only used on *nix, so this should not present a problem.
* Pass in to makedepend the name(s) of files that all objects depend on.Nicholas Clark2013-05-201-1/+1
|
* Remove vestigial *.SH code which can link the extracted file into ../Nicholas Clark2013-05-201-6/+0
| | | | | | | | 4 of the *.SH files have code which links the extracted file into the parent directory if the current directory ends SH. This code dates from Perl 1. It seems that the intent was that the *.SH files could live in a SH/ directory, but that feature was neither used or mentioned in the documentation in Perl 1, and hasn't been used since.
* regen/unicode_constants.pl: Change #define nameKarl Williamson2013-03-081-1/+1
| | | | | This was added in the 5.17 series so there's no code relying on its current name. I think that the abbreviation is clearer.
* Fix various minor pod issuesKarl Williamson2013-01-241-1/+1
| | | | | These were all uncovered by the new Pod::Checker, not yet in core. Fixing these will speed up debugging the new Checker.
* handy.h: Create isALPHANUMERIC() and kinKarl Williamson2012-12-221-3/+3
| | | | | | | | | | | | | | | | | | | | | | Perl has had an undocumented macro isALNUMC() for a long time. I want to document it, but the name is very obscure. Neither Yves nor I are sure what it is. My best guess is "C's alnum". It corresponds to /[[:alnum:]]/, and so its best name would be isALNUM(). But that is the name long given to what matches \w. A new synonym, isWORDCHAR(), has been in place for several releases for that, but the old isALNUM() should remain for backwards compatibility. I don't think that the name isALNUMC() should be published, as it is too close to isALNUM(). I finally came to the conclusion that isALPHANUMERIC() is the best name; it describes its purpose clearly; the disadvantage is its long length. I doubt that it will get much use, but we need something, I think, that we can publish to accomplish this functionality. This commit also converts core uses of isALNUMC to isALPHANUMERIC. (I intended to that separately, but made a mistake in rebasing, and combined the two patches; and it seemed like not a big enough problem to separate them out again.)
* Remove "register" declarationsKarl Williamson2012-11-245-29/+29
| | | | | | | This finishes the removal of register declarations started by eb578fdb5569b91c28466a4d1939e381ff6ceaf4. It neglected the ones in function parameter declarations, and didn't include things in dist, ext, and lib, which this does include
* add shebangs where missingSawyer X2012-09-222-0/+4
|
* Remove some EBCDIC dependenciesKarl Williamson2012-09-131-5/+3
| | | | | | A new regen'd header file has been created that contains the native values for certain characters. By using those macros, we can eliminate EBCDIC dependencies.
* Remove the VM/ESA port.Nicholas Clark2012-08-311-1/+1
| | | | | VM/ESA was a mainframe OS. IBM ended service on it in June 2003. It was superseded by Z/VM.
* Omnibus removal of register declarationsKarl Williamson2012-08-186-57/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes most register declarations in C code (and accompanying documentation) in the Perl core. Retained are those in the ext directory, Configure, and those that are associated with assembly language. See: http://stackoverflow.com/questions/314994/whats-a-good-example-of-register-variable-usage-in-c which says, in part: There is no good example of register usage when using modern compilers (read: last 10+ years) because it almost never does any good and can do some bad. When you use register, you are telling the compiler "I know how to optimize my code better than you do" which is almost never the case. One of three things can happen when you use register: The compiler ignores it, this is most likely. In this case the only harm is that you cannot take the address of the variable in the code. The compiler honors your request and as a result the code runs slower. The compiler honors your request and the code runs faster, this is the least likely scenario. Even if one compiler produces better code when you use register, there is no reason to believe another will do the same. If you have some critical code that the compiler is not optimizing well enough your best bet is probably to use assembler for that part anyway but of course do the appropriate profiling to verify the generated code is really a problem first.
* Remove the UTS port.Nicholas Clark2012-08-171-8/+0
| | | | | | UTS was a mainframe version of System V created by Amdahl, subsequently sold to UTS Global. The port has not been touched since before 5.8.0, and UTS Global is now defunct.
* x2p/str.c C++ clean-up.Craig A. Berry2012-07-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compiling str.c with HP C++ for OpenVMS says, FILE_ptr(fp) = (void*)ptr; /* LHS STDCHAR* cast non-portable */ .....................^ %CXX-E-INCASSOPN, a value of type "void *" cannot be assigned to an entity of type "char *" at line number 213 in file D0:[craig.blead.x2p]str.c;1 FILE_ptr(fp) = (void*)ptr; /* LHS STDCHAR* cast non-portable */ .................^ %CXX-E-INCASSOPN, a value of type "void *" cannot be assigned to an entity of type "char *" at line number 233 in file D0:[craig.blead.x2p]str.c;1 So remove the void casts to avoid the errors. This is an exact mirror of d06fc7d4ca98, which also removed the void cast from an equivalent line in perlio.c. That was almost six years ago, so if anything especially dire were going to happen without the cast, it likely would have happened by now. The casts were added by cc00df79d5 and 5faea5d5, the former of which refers vaguely to "compiler worries" without specifying what they were, but signedness warnings are a likely suspect. We'll get those again now, but warnings are less bad than errors. A more robust solution would be to add a Configure-time detection of the type of FILE._ptr and cast everything to that. An even more robust solution would be to eliminate all the "buffer snooping" mechanisms and concede that maintaining an stdio implementation is a job for stdio maintainers and not Perl maintainers.
* Remove code for supporting 80286 based systems.Nicholas Clark2012-07-281-4/+0
| | | | | | | | The 80286 was released two years before Perl 1, but the support code was added with Perl 3. The chip hasn't been produced for more than 15 years - even the 80386 hasn't been manufactured since 2007. Most of the other memory model code was removed by commit 5869b1f143426909 in Sep 2000, so support for 16 bit systems is long dead.
* walk.c: Combine macro callsKarl Williamson2012-06-171-5/+5
| | | | | Replace combinations of macro calls with single ones that mean the same thing.
* a2py.c: Use isWORDCHAR() instead of individ componentsKarl Williamson2012-06-171-2/+2
| | | | | isWORDCHAR() is a single macro (and array lookup) that is the equivalent of the OR of the three macros previously used.
* VMS --> __VMS in a2p.h.Craig A. Berry2012-06-021-1/+1
| | | | | | | | | | C++ does not define VMS, only __VMS. We define VMS in config.h for C++, but here we're trying to figure out how to include config.h, so we don't have it yet. The only compiler that defined only VMS and not __VMS was VAX C, which isn't C89-compliant and can't build Perls from the current century.
* add a missing blink above =item to s2p.PLRicardo Signes2012-05-081-1/+2
|
* Remove commented-out "support" for perl's malloc with x2p.Nicholas Clark2011-12-091-15/+4
| | | | | | | | | | In 1998 commit 30e2e4257067d5f8 stated temporarily disable perl malloc for a2p until we clean up conflicting malloc() declarations everywhere and nothing has changed since. 13 years later, no-one has reported problems, so it's safe to remove it.
* [RT #36079] Convert ` to '.jkeenan2011-11-221-5/+5
|
* [RT #36079] Convert ` to '.jkeenan2011-11-221-68/+68
|
* The Borland Chainsaw MassacreSteve Hay2011-09-102-14/+1
| | | | | Remove support for the Borland C++ compiler on Win32, as agreed here: http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2011-09/msg00034.html
* s2p: Fix broken pod linksKarl Williamson2011-07-031-3/+3
|
* [perl #88496] missing dependencies in perl core makefilesMartin Becker2011-05-181-2/+2
| | | | | | | | | | | | | | | | | | | I have spotted a couple of missing dependencies in the makefiles utils/Makefile.SH and x2p/Makefile.SH that prevent json_pp, s2p, psed, and find2perl from being rebuilt after configuration changes. This could cause trouble if the install prefix has been changed, so that the shebang line of these scripts from a previous build no longer matches the target location of the perl binary. A workaround would be to always "make clean" after changes to the configuration, which sounds reasonable anyway. That said, most of the other tools do have config.sh properly listed as a dependency and I don't see why those four should not. I have attached a small patch against perl-5.13.11 to fix this. The bug is also present in the latest stable release as of this writing, perl-5.12.3, except that json_pp is not included there.
* Fix typos (spelling errors) in x2p/*.Peter J. Acklam) (via RT2011-01-071-2/+2
| | | | | | | | | # New Ticket Created by (Peter J. Acklam) # Please include the string: [perl #81920] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=81920 > Signed-off-by: Abigail <abigail@abigail.be>
* Fix x2p and utils dependencies for static buildsAndy Dougherty2010-10-141-3/+10
| | | | | | | | The x2p and utils .PL extractions use the Cwd module, which is not available in miniperl in a static build. (For a dynamic build, miniperl only loads the pure perl portion of Cwd, but building the whole extension ensures that the pure perl part is correctly built and available. It might be cleaner just to always require the full perl.)
* Make everything exec-bit.txt lists executableFlorian Ragwitz2010-08-192-0/+0
| | | | | | | All these files used to be executable in the release tarballs. Apparently things also work without that in the repository, but I'd rather add this possibly unecessary change to blead instead of breaking the upcoming release. This should probably be looked into again afterwards.
* Global executable bit cleanupDavid Golden2010-07-242-0/+0
| | | | | | | | | | | | | | | | | | | | When porting/makerel runs, all files copied into the directory for the tarball have the executable bit stripped and then only a specific set of files have the executable bit restored. There are many files in the repo that have the executable bit set in the repo that will be stripped. So that the state of files in the repo is as close as possible to the state of files in the release tarball, the executable bit has been stripped from such files. In one recent case, a file added from a dual-life module needed the executable bit set. Because it had the bit in the repo but was not listed in makerel to get an executable bit, tests using it passed in the repo and failed in the tarball. This commit refactors the list into a new file, Porting/exec-bit.txt and add tests to detect a mismatch between files listed there and actual executable bits in the repo.
* a2p match() faultyZefram2009-10-231-1/+1
| | | | | | | While I was doing the $[ thing, I discovered a bug in a2p's handling of the match() operator. It uses a comma operator, which has unintended behaviour in list context (e.g., in a print statement). It also returns empty string for a non-match, rather than the required 0.
* a2p generates code using $[Zefram2009-10-231-4/+4
| | | | | | | | | | | I missed earlier that the a2p documentation mentions $[. Patch attached. The same doc section has a couple of other paragraphs that look like they need updating, but I'm not sure what to do with them: one refers to keys() not applying to arrays, and one is about $#. -zefram Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
* [perl #69838] a2p generates code using $[Zefram2009-10-233-25/+13
|
* 'make distclean now results in an actually-clean tree.Jesse Vincent2009-10-041-0/+2
|
* Backslash-escape /s in the target of a generated s/// expressionAbhijit Menon-Sen2009-08-291-1/+1
| | | | | Fixes #68840 reported by Guglielmo Bondioni, where a2p incorrectly translated sub(/foo/,"bar/baz") into s/foo/bar/baz/.
* find2perl (was Re: help unblock me from *@perl.org so I can use perlbug)Michael G Schwern2009-03-251-20/+0
|
* Add SEE ALSO's to find2perl and File::Find.Dan Jacobson2009-03-251-1/+7
|
* Move .bat gitignores with their unix counterpartsRafael Garcia-Suarez2009-01-061-0/+3
| | | | Remove also redundant ignores for produced files in x2p
* [admin] set up .gitignore filesSam Vilain2008-12-191-0/+4
| | | | | A list submitted by Paul Fenwick was briefly factored into directory-specific rules.