perl foo.pl arg1 arg2 arg3
If you want to specify perl options C<-my_opts> to the perl itself (as
-opposed to to your program), use
+opposed to your program), use
perl -my_opts foo.pl arg1 arg2 arg3
Note also that executable files on OS/2 can have an arbitrary extension,
but F<.exe> will be automatically appended if no dot is present in the name.
-The workaround as as simple as that: since F<blah.> and F<blah> denote the
+The workaround is as simple as that: since F<blah.> and F<blah> denote the
same file, to start an executable residing in file F<n:/bin/blah> (no
extension) give an argument C<n:/bin/blah.> (dot appended) to system().
You need to fetch the latest perl source (including developers
releases). With some probability it is located in
- http://www.perl.com/CPAN/src/5.0
- http://www.perl.com/CPAN/src/5.0/unsupported
+ http://www.cpan.org/src/5.0
+ http://www.cpan.org/src/5.0/unsupported
If not, you may need to dig in the indices to find it in the directory
of the current maintainer.
Quick cycle of developers release may break the OS/2 build time to
time, looking into
- http://www.perl.com/CPAN/ports/os2/ilyaz/
+ http://www.cpan.org/ports/os2/ilyaz/
may indicate the latest release which was publicly released by the
maintainer. Note that the release may include some additional patches
Returns C<undef> if it was not called yet, otherwise bit 1 is
set if on the previous call do_harderror was enabled, bit
-2 is set if if on previous call do_exception was enabled.
+2 is set if on previous call do_exception was enabled.
This function enables/disables error popups associated with
hardware errors (Disk not ready etc.) and software exceptions.
processes have these sections loaded at same addresses, and no fixup
of internal links inside the F<.EXE> is needed.
-Since DLLs may be loaded at run time, to have the same mechanism for for DLLs
+Since DLLs may be loaded at run time, to have the same mechanism for DLLs
one needs to have the address range of I<any of the loaded> DLLs in the
system to be available I<in all the processes> which did not load a particular
DLL yet. This is why the DLLs are mapped to the shared memory region.
=back
-=head2 DLL name mangling: 5.6.2 and beyound
+=head2 DLL name mangling: 5.6.2 and beyond
In fact mangling of I<extension> DLLs was done due to misunderstanding
of the OS/2 dynaloading model. OS/2 (effectively) maintains two
new Perls will be able to I<resolve the names> of old extension DLLs
if @INC allows finding their directories.
-However, this still does not guarantie that these DLL may be loaded.
+However, this still does not guarantee that these DLL may be loaded.
The reason is the mangling of the name of the I<Perl DLL>. And since
the extension DLLs link with the Perl DLL, extension DLLs for older
versions would load an older Perl DLL, and would most probably
loaded an extension compiled for the old executable (ouph!). In this
case the old executable will get a forwarder DLL instead of the old
perl DLL, so would link with the new perl DLL. While not directly
-fatal, it will behave the same as new excutable. This beats the whole
+fatal, it will behave the same as new executable. This beats the whole
purpose of explicitly starting an old executable.
=item *