develooper Front page | perl.perl5.porters | Postings from March 2001

/imsx not visible inside (??{})

Rick Delaney
March 14, 2001 13:26
/imsx not visible inside (??{})
Message ID:
I've already tried sending this via twice and
haven't received a confirmation or seen it on p5p.  One more
try to and p5p directly.

This is a bug report for perl from,
generated with the help of perlbug 1.28 running under perl v5.6.0.

$ perl -le 'print "not ok" if "a\n"!~/.(??{"."})/s'
not ok
$ perl -le 'print "not ok" if "aA"!~/a(??{"a"})/i'
not ok
At the time that (??{}) is compiled (during execution of the entire
regexp) I don't think the information that the whole regexp was
compiled under modifiers is available so this is not really surprising.
But the resulting behaviour will probably surprise people anyway.
Do we need a (??imsx-imsx{}) shorthand for
(??{"(?imsx-imsx:" . RE . ")"}) that we can convert the above nodes to
at regexp compilation?
Or do we just hackishly convert them to (??{"(?imsx-imsx:" . RE . ")"})?
Or do we document that modifiers aren't visible inside (??{})?

Rick Delaney
Site configuration information for perl v5.6.0:

Configured by rick at Wed Apr 26 16:08:10 EDT 2000.

Summary of my perl5 (revision 5.0 version 6 subversion 0) configuration:
    osname=linux, osvers=2.2.10, archname=i586-linux
    uname='linux 2.2.10 #1 smp tue aug 10 19:01:45 mdt 1999 i586 unknown '
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
    useperlio=undef d_sfio=undef uselargefiles=define 
    use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef
    cc='cc', optimize='-g', gccversion=egcs-2.91.66 19990314 (egcs-1.1.2 release)
    cppflags='-DDEBUGGING -fno-strict-aliasing'
    ccflags ='-DDEBUGGING -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
    stdchar='char', d_stdstdio=define, usevfork=false
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    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 -ldb -ldl -lm -lc -lposix -lcrypt
    libc=/lib/, 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 v5.6.0:

Environment for perl v5.6.0:
    LANG (unset)
    LANGUAGE (unset)
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PERL_BADLANG (unset)
    SHELL=/bin/bash Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About