summaryrefslogtreecommitdiff
path: root/vms
Commit message (Collapse)AuthorAgeFilesLines
* perldelta: repair weird state after automated perldelta creationRicardo Signes2015-06-011-1/+1
|
* add perl5221delta.podRicardo Signes2015-06-011-1/+1
|
* perldelta is now the perl5220deltaRicardo Signes2015-05-081-1/+1
|
* Fix unixify when beginning with current directory.Craig A. Berry2015-05-061-3/+2
| | | | | | | | | | | | | | | | | | VMS::Filespec::unixify has been truncating its return value and returning early when the input begins with [] meaning the current directory. If there was nothing else, we've been getting the right answer: [] --> ./ but if there was a file portion of the name it's been getting omitted: []foo.txt --> ./ which is now fixed. Looks like it's been broken since inception in 5.002, though only with the specific [] case and not if there was an explicit device or directory name.
* Create new perldelta for 5.21.12 (although it's unlikely to happen)Steve Hay2015-04-201-1/+1
|
* Create new perldelta for 5.21.11 (if that happens)Steve Hay2015-03-201-1/+1
|
* Change name of mro.cKarl Williamson2015-03-191-3/+3
| | | | | | | | | This is to prevent a conflict showing up on z/OS (os390) because this file's name is the same as one in /ext, and there are functions cross-referenced between them, and the loader on that platform can't deal with this. See http://nntp.perl.org/group/perl.perl5.porters/226612
* new delta for 5.21.10Sawyer X2015-02-211-1/+1
|
* Remove another dead function in vms/vms.c.Craig A. Berry2015-02-191-26/+0
| | | | | No use for the utf8_to_vtf7 function has appeared in the first nine years of its existence so it's not earning its keep.
* Fix some style issues in vms/vms.c.Craig A. Berry2015-02-191-306/+429
| | | | | | | | | | | | | | | | | | This normalizes function definitions and addresses the most egregious of the Totally Forgot to Indent At All problems that are rampant throughout this file. For now I've punted on normalizing indents and tried to be consistent with whatever local variant seems to be in use. There are 2-, 3- (!), and 4-space indents, along with a liberal sprinkling of tab characters, most (but not all) of which seem to be intended to be equivalent to 8 spaces. I considered normalizing indents with some like astyle -c --style=linux vms.c but that produces 8400+ changed lines, which doesn't seem worth it.
* Update copyright in vms/vms.c.Craig A. Berry2015-02-191-1/+1
|
* Make nowait spawn return correct pid on VMS.Craig A. Berry2015-02-171-1/+5
| | | | | | | | | | Apparently I missed this back in eed5d6a149b02. When spawning a subprocess without waiting, the return value is the pid of that process, but we need to let pp_system know we're doing that so it doesn't manipulate the value as if it were an exit status. One symptom was that t/test.pl's watchdog would sometimes report that it had failed to start when in fact it had started just fine.
* Remove dead function from vms/vms.cCraig A. Berry2015-02-161-14/+0
| | | | | | | fix_bare_dirnames is not used anywhere and doesn't actually do anything. It appears to be a placeholder for something that has not materialized in the 10 years of it existence, so time to tidy up.
* Set NAN_COMPARE_BROKEN on VMS with long doubles.Craig A. Berry2015-02-141-0/+4
| | | | | This gets us passing more (but not all) of the infnan.t tests with long doubles (which are true 128-bit IEEE 754 gizmos).
* Update Encode to CPAN version 2.70Chris 'BinGOs' Williams2015-02-061-1/+4
| | | | | | | | | | | | | | | | | | | | | | | [DELTA] $Revision: 2.70 $ $Date: 2015/02/05 10:53:00 $ ! Makefile.PL add bin/encguess to EXE_FILES 2.69 2015/02/05 10:35:11 ! bin/encguess Refactored so that * does not depend on non-core module (File::Slurp in particular) * PODified document * -s "encA encB" to -s encA,encB which is more shell-friendly * and more ! MANIFEST + bin/encguess Pulled: Added CLI wrapper for Encode::Guess https://github.com/dankogai/p5-encode/pull/32 ! Unicode/Unicode.pm Pulled: Bump $VERSION in module changed since Encode-2.60 https://github.com/dankogai/p5-encode/pull/31
* Downgrade missing return warning for VMS C++ compiler.Craig A. Berry2015-01-251-1/+1
| | | | | | | | | | | | | Without these we get a ton of warnings that look like: } ^ %CXX-W-MISSINGRETURN, missing return statement at end of non-void function "S_scan_heredoc" at line number 9404 in file D0:[craig.blead]toke.c;1 which get escalated to errors at link time and thus break the build.
* Version bump + new perldeltaMatthew Horsfall2015-01-201-1/+1
|
* Ditch the custom extern/const model on VMS.Craig A. Berry2015-01-021-8/+0
| | | | | | | | | | | | | | | | | | | | | | | We've been using globaldef/globalref for global data since eons ago. It was a requirement for the ancient and long-defunct VAXC compiler (not to be confused with DEC C for OpenVMS VAX), but DEC/Compaq/HP C supports extern and const pretty much the way everybody else does, and has for many years. HP C also supports globaldef/globalref for backward compatibility, but the C++ compiler does not, so continuing to use it means two different models for C and C++. While there is a slight theoretical benefit to using the old model and its fine-grained control of program section attributes and having all the read-write variables in one program section and all the read-only variables in another, there is no measureable performance or code size benefit, and being different just isn't worth the aggravation. So let's resign ourselves to having a separate program section in the shareable image for each global item and make a couple of places in the code easier on everyone's eyeballs and less likely to collide with other work.
* Simplify PIC specification in perlshr.exe.Craig A. Berry2015-01-021-5/+1
| | | | | | PIC has no meaning on Alpha as all code generated by the compiler is position independent. So only specify it for VAX. This allows us to get rid of the test for whether we are on Itanium.
* Explicitly name linker map on VMS.Craig A. Berry2015-01-021-1/+1
| | | | | | | By default the linker takes the base name of the first object file and uses that when creating the name of the linker map file, which means we've been getting a file named dynaloader.map for the main shareable image map. Name it after the target instead.
* Remove dead line of code from vms/test.com.Craig A. Berry2015-01-021-1/+0
| | | | Hasn't been needed since 34b5aed4c569.
* Create new perldeltaMax Maischein2014-12-211-1/+1
|
* Unescape directory portion of path in unixify.Craig A. Berry2014-12-041-6/+4
| | | | | Basically I missed a spot in 812e68ff314e, so the escaped space in [foo^_bar], for example, was not translated correctly.
* Remove mysig* macros from vmsish.h.Craig A. Berry2014-11-221-6/+0
| | | | | We haven't defined overrides for these functions for a long time so this is just dead code.
* New perldelta for v5.21.7Chris 'BinGOs' Williams2014-11-211-1/+1
|
* Escape EFS for directory portion in tovmsspec.Craig A. Berry2014-11-181-1/+6
| | | | | | | | | | | For some reason extended characters were only being escaped in the final component of the path, but not in the directory portion, the one exception being dots. We need to give the entire path the same treatment. There is probably considerable opportunity for further consolidation and refactoring in what we escape, but at least now ../foo bar/ correctly becomes [-.foo^_^_bar]. The reverse case has similar problems and is a TODO.
* Remove unused exit handler in vms/vms.c.Craig A. Berry2014-11-151-40/+0
| | | | | This code became obsolete in ff7adb5275976 and has just been sitting there taking up space.
* Don’t copy VMS hints to cop->op_privateFather Chrysostomos2014-11-081-4/+2
| | | | | | Commit d5ec29879 in 2006 started storing all the hints in COPs. Some VMS-specific hints have nonetheless still been copied from PL_hints to cop->op_private, though that is no longer necessary.
* New perldelta for 5.14.6Abigail2014-10-201-1/+1
|
* Fix start-of-string error in tovmsspec.Craig A. Berry2014-09-281-1/+1
| | | | | | | | | | | When translating a filespec starting with an extended character, say C<+foo>, from Unix to VMS format, we were inadvertently skipping over the first character and thus not translating it to C<^+foo> with the caret escape prepended to the plus sign as we should have been. This fixes a fairly new test failure in ExtUtils::Manifest where a filename starts with a single quote.
* Create new perldelta for 5.21.5Steve Hay2014-09-201-1/+1
|
* mask VMS hints bits in COPsDavid Mitchell2014-09-101-1/+1
| | | | | | | | | | | | A couple of VMS-specific hints bits are stored in op_private on COPs. Currently these are added using NATIVE_HINTS, which is defined as PL_hints >> 24. Since other hints have started using the top byte of PL_hints, this has the possibility of inadvertently setting other bits in cop->op_private. So mask out the bits we don't want. We need this before the next commit, which will assert valid bits on debugging builds. (This is VMS-specific, and has been applied blind)
* New perldelta.Peter Martini2014-08-211-1/+1
|
* Reverse order of environ tables under bash on VMS.Craig A. Berry2014-08-081-0/+3
| | | | | | | | | | | | | The default for populating %ENV on VMS is from logical names first and the CRTL environ array second unless overridden by setting PERL_ENV_TABLES. That's a reasonable default for DCL, but not quite right when running under bash as exports under bash might end up hidden behind logical names. So reverse the default order when GNV$UNIX_SHELL is set. Also stop mentioning that setenv() may not be present in the CRTL since it is present for VMS versions 7.0 and later and those are the only ones we support.
* getenv() failed lookup need not set errno on VMS.Craig A. Berry2014-08-071-14/+9
| | | | | | | | | | | | | | The standard does not indicate any errno values set when getenv() simply doesn't find the requested value, which is a pretty common occurrence. The VMS-specific implementation of getenv() has been setting errno in this case, which means there is often an errno value hanging around for later unsuspecting operations. It particularly tends to bite people who don't read the documentation to die() and/or don't understand how errno works (only valid after a failed syscall). So we now stop setting errno in this case, but leave it for a few serious errors that should be extremely rare.
* Fix legacy VMS feature checking status.Craig A. Berry2014-07-221-19/+17
| | | | | | | | | | | | | | | | Back in 8dc9d3390b257b I consolidated two routines that were almost identical -- except for their return values. The routine I kept returns the length of the equivalence name after logical name translation, but some uses of it were checking it to see if it was a successful VMS condition value. Which means an odd length (such as from "1") was successful but an even length (such as from "ENABLE", the value recommended in the documentation) failed. So fix those uses to check for a non-zero from simple_trnlnm. For most features this only affected pre-7.3 systems, i.e., VMS releases more than thirteen years old. However, it also affected features such as PERL_VMS_POSIX_EXIT that we have made up on our own and are not tracking a CRTL feature.
* New perldelta.Abigail2014-07-201-1/+1
|
* Add new perldelta for 5.21.2Matthew Horsfall (alh)2014-06-201-1/+1
|
* A malloc cast in vms/vms.c.Craig A. Berry2014-06-051-1/+1
| | | | | C didn't notice this with standard warnings enabled, but C++ takes vengeance, so cast appropriately.
* Give caretx.c an explicit rule in vms/descrip_mms.template.Craig A. Berry2014-05-291-0/+2
| | | | | | Without an explicit rule it gets build with CFLAGS rather than CORECFLAGS, which could make it miss important things, such as PERL_CORE being defined.
* Remove x2pLeon Timmermans2014-05-291-64/+3
| | | | | This removes find2perl, s2p and a2p from core. They have all been released to CPAN as separate distributions.
* add new perldelta for 5.21.1Ricardo Signes2014-05-271-1/+1
|
* remove Module-Build from core perl distributionRicardo Signes2014-05-271-4/+1
|
* new perldeltaRicardo Signes2014-05-261-1/+1
|
* bump version to 5.20.0, install 5.20 perldeltaRicardo Signes2014-05-121-1/+1
|
* Create new perldelta for 5.19.12 (not that it's expected to exist...)Steve Hay2014-04-201-1/+1
|
* New perldelta for 5.19.11Aaron Crane2014-03-201-1/+1
|
* Handle "no versions" feature in fileify and tovmsspec.Craig A. Berry2014-03-101-5/+11
| | | | | | | | | | | | | | | | This is a follow-up to d5e61aaf9d7051b136, where we stopped escaping semicolons in tovmsspec when they appeared to be the beginning of a version specification but always escaped them otherwise. It turns out there is yet another CRTL feature logical name (DECC$FILENAME_UNIX_NO_VERSION) that tells us a Unix-format specification is not allowed to have a version number, so in that case, always escape the semicolon since it can't be the start of a version specification. Also, don't add the version number when fileifying directory specs if this "no versions" feature is in effect.
* Smarter handling of escaped semicolons in vmsify.Craig A. Berry2014-03-061-8/+6
| | | | | | | | | | | In theory, a Unix-format filespec can contain a semicolon and thus need to be escaped when converted to a VMS-format filespec. But a much more common use case is a filespec that has a version number despite being in Unix format. So detect a semicolon that delimits a version specification and pass it through but escape other semicolons. This is apparently what decc$to_vms does, so we're being consistent with the CRTL.
* tbuffer_t no longer exists on VMS.Craig A. Berry2014-03-021-15/+4
| | | | | | | | | | | | | | | | | | It was replaced by the standard tms struct in v7.0, released in 1995. Explicit support for pre-7.0 was removed in 32995a382d65b for Perl 5.16, but I missed the tbuffer_t bit, which tripped up Nicholas in 25983af42cdcf2dc, because he asked for: struct tbuffer_t which via macro expansion became: struct struct tms which failed to compile. So remove code that's unnecessarily different on VMS, leaving only a tbuffer_t compatibility macro with a more appropriate comment so it will hopefully be less likely to get used in new code.