# New Ticket Created by Andy Lester
# Please include the string: [perl #48367]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=48367 >
---
osname= linux
osvers= 2.6.9-42.0.3.elsmp
arch= x86_64-linux-thread-multi
cc= gcc
---
Flags:
category=core
severity=high
ack=no
---
In intlist_get(), we call list_get() which can return a NULL.
Then, the result is checked against -1, and then dereferenced.
I suspect that check against -1 should actually be a check against NULL,
but don't know enough to prove it and write the test case.
---
Summary of my parrot 0.5.0 (r23610) configuration:
configdate='Sat Dec 8 19:01:45 2007 GMT'
Platform:
osname=linux, archname=x86_64-linux-thread-multi
jitcapable=0, jitarchname=nojit,
jitosname=linux, jitcpuarch=amd64
execcapable=0
perl=/usr/bin/perl
Compiler:
cc='/var/gcc43/bin/gcc', ccflags=' -D_GNU_SOURCE -DHASATTRIBUTE_CONST
-DHASATTRIBUTE_DEPRECATED -DHASATTRIBUTE_FORMAT -DHASATTRIBUTE_MALLOC
-DHASATTRIBUTE_NONNULL -DHASATTRIBUTE_NORETURN -DHASATTRIBUTE_PURE
-DHASATTRIBUTE_UNUSED -DHASATTRIBUTE_WARN_UNUSED_RESULT -falign-functions=16
-mno-accumulate-outgoing-args -W -Wall -Waggregate-return -Wbad-function-cast
-Wc++-compat -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment
-Wdeclaration-after-statement -Wdisabled-optimization -Wextra
-Wformat-nonliteral -Wformat-security -Wformat-y2k -Wimplicit
-Wimplicit-function-declaration -Wimplicit-int -Wimport -Winit-self -Winline
-Winvalid-pch -Wlogical-op -Wmain -Wmissing-braces -Wmissing-declarations
-Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-include-dirs
-Wmissing-prototypes -Wnested-externs -Wno-endif-labels -Wno-shadow -Wno-unused
-Wnonnull -Wpacked -Wparentheses -Wpointer-arith -Wreturn-type -Wsequence-point
-Wsign-compare -Wstrict-aliasing -W
strict-aliasing=2 -Wswitch -Wswitch-default -Wtrigraphs -Wundef
-Wunknown-pragmas -Wvariadic-macros -Wwrite-strings -DDISABLE_GC_DEBUG=1
-DNDEBUG -O1',
Linker and Libraries:
ld='gcc', ldflags='',
cc_ldflags='',
libs='-lresolv -lnsl -ldl -lm -lcrypt -lutil -lpthread -lrt -lgmp'
Dynamic Linking:
share_ext='.so', ld_share_flags='-shared -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC',
load_ext='.so', ld_load_flags='-shared -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC'
Types:
iv=long, intvalsize=8, intsize=4, opcode_t=long, opcode_t_size=8,
ptrsize=8, ptr_alignment=1 byteorder=12345678,
nv=double, numvalsize=8, doublesize=8
---
Environment:
HOME =/home/andy
LANG =en_US.UTF-8
LANGUAGE (unset)
LD_LIBRARY_PATH =/opt/intel/cce/10.0.023/lib
LOGDIR (unset)
PATH
=/opt/intel/cce/10.0.023/bin:/usr/kerberos/bin:/usr/lib64/ccache/bin:/usr/local/bin:/bin:/usr/bin:/usr/java/j2sdk1.4.2_14/jre/bin/:/home/andy/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/opt/intel/cce/10.0.023/bin
SHELL =/bin/bash