Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stringification doesn't seem to apply to regexp arguments #831

Closed
p5pRT opened this issue Nov 9, 1999 · 4 comments
Closed

Stringification doesn't seem to apply to regexp arguments #831

p5pRT opened this issue Nov 9, 1999 · 4 comments

Comments

@p5pRT
Copy link

p5pRT commented Nov 9, 1999

Migrated from rt.perl.org#1759 (status was 'resolved')

Searchable as RT1759$

@p5pRT
Copy link
Author

p5pRT commented Nov 9, 1999

From dhd@plcom.on.ca

Hi,

Applying capturing regular expressions to references does something
rather strange​:

[dhd@​willow]~ $ perl -le '$f=[1]; print $f; while ($f =~ /(\w+)/g) {print $1}'
ARRAY(0x80cb97c)
øl@​ø
@​80cb97c

It's evidently failing to stringify the scalar. As another example (and this
one may be more annoying since we usually don't mess with the stringified
form of bare references)​:

[dhd@​willow]~ $ perl -le 'package Foo; use overload q("") => sub { "FOO" }; $f = bless [1], "Foo"; print "stringify -> $f"; while ($f =~ /(\w+)/g) {print $1}'
stringify -> FOO
Øé

This is with the Debian GNU/Linux package of Perl 5.005_03.

Perl Info


Site configuration information for perl 5.00503:

Configured by torin at Wed Sep 22 00:18:38 PDT 1999.

Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration:
  Platform:
    osname=linux, osvers=2.0.36, archname=i386-linux
    uname='linux perv 2.0.36 #2 wed nov 18 03:00:48 pst 1998 i686 unknown '
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef useperlio=undef d_sfio=undef
  Compiler:
    cc='cc', optimize='-O2', gccversion=2.95.1 19990809 (prerelease)
    cppflags='-Dbool=char -DHAS_BOOL -D_REENTRANT -DDEBIAN -I/usr/local/include'
    ccflags ='-Dbool=char -DHAS_BOOL -D_REENTRANT -DDEBIAN -I/usr/local/include'
    stdchar='char', d_stdstdio=undef, usevfork=false
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    alignbytes=4, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lndbm -lgdbm -ldbm -ldb -ldl -lm -lc -lposix -lcrypt
    libc=, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
    cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'

Locally applied patches:
    


@INC for perl 5.00503:
    /usr/lib/perl5/5.005/i386-linux
    /usr/lib/perl5/5.005
    /usr/local/lib/site_perl/i386-linux
    /usr/local/lib/site_perl
    /usr/lib/perl5
    .


Environment for perl 5.00503:
    HOME=/home/dhd
    LANG (unset)
    LANGUAGE (unset)
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:/usr/games
    PERL_BADLANG (unset)
    SHELL=/bin/bash

@p5pRT
Copy link
Author

p5pRT commented Nov 9, 1999

From [Unknown Contact. See original ticket]

David Huggins-Daines writes​:

[dhd@​willow]~ $ perl -le '$f=[1]; print $f; while ($f =~ /(\w+)/g) {print $1}'
ARRAY(0x80cb97c)
øl@​ø
@​80cb97c

It's evidently failing to stringify the scalar.

Evidently, not, as omiting //g shows. Something is fishy with pos()
on a reference. Is it wise to just plain prohibit it?

Ilya

@p5pRT
Copy link
Author

p5pRT commented Dec 13, 2000

From [Unknown Contact. See original ticket]

Another...

David Huggins-Daines writes​:

[dhd@​willow]~ $ perl -le '$f=[1]; print $f; while ($f =~ /(\w+)/g) {print $1}'
ARRAY(0x80cb97c)
xl@​x
@​80cb97c

It's evidently failing to stringify the scalar.

Evidently, not, as omiting //g shows. Something is fishy with pos()
on a reference. Is it wise to just plain prohibit it?

Ilya

@p5pRT
Copy link
Author

p5pRT commented Aug 7, 2002

@gbarr - Status changed from 'open' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant