Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
executable file 620 lines (465 sloc) 14.5 KB
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>#56748: [BUG] Null PMC access in type&#40;&#41;</title>
<link rel="shortcut icon" href="/rt3/NoAuth/images//favicon.png" type="image/png" />
<link rel="stylesheet" href="/rt3/NoAuth/css/rt.perl.org/main.css" type="text/css" media="all" />
<link rel="stylesheet" href="/rt3/NoAuth/css/print.css" type="text/css" media="print" />
<script type="text/javascript" src="/rt3/NoAuth/js/util.js"></script>
<script type="text/javascript" src="/rt3/NoAuth/js/titlebox-state.js"></script>
<script type="text/javascript"><!--
onLoadHook("loadTitleBoxStates()");
--></script>
</head>
<body id="comp-Public-Bug-Display">
<div id="logo">
<a href="http://rt.perl.org/rt3/"><img src="/rt3/NoAuth/images//local/pblogo.gif" alt="PerlBug" width="230" height="50"></a>
</div>
<div id="quickbar">
<div id="quick-personal">
<span class="hide"><a href="#skipnav">Skip Menu</a> | </span>
You are currently an anonymous guest.
|
<a href="/rt3/NoAuth/Logout.html?URL=/rt3/index.html?goto=%252FPublic%252FBug%252FDisplay.html%253Fid%253D56748">Login</a>
|
<a href="/rt3/NoAuth/Logout.html">Return to Main</a>
| <a href="/rt3/User/Prefs.html">Preferences</a>
</div>
<div id="topactions">
<span class="topaction">
<form action="/rt3/Public/Search/Simple.html">
<input size="12" name="q" autocomplete="off" accesskey="0" class="field" />
<input type="submit" class="button" value="Search" />
</form>
</span>
</div>
</div>
<div id="nav">
<ul id="system-menu">
<div><div class="wrapper">
</div></div>
</ul>
</div>
<div id="header">
<h1>#56748: [BUG] Null PMC access in type&#40;&#41;</h1>
<ul id="page-menu">
<div><div><div>
&nbsp;
</div></div></div>
</ul>
</div>
<div id="body">
<a name="skipnav" id="skipnav" accesskey="8"></a>
<div class="">
<div class="titlebox " id="">
<div class="titlebox-title">
<span class="widget"><a href="#" onclick="return rollup('TitleBox--_Public_Bug_Display.html------Report information---0');" onfocus="this.blur(); return false;" title="Toggle visibility">X</a></span>
<span class="left">Report information</span>
<span class="right"></span>
</div>
<div class="titlebox-content " id="TitleBox--_Public_Bug_Display.html------Report information---0">
<table width="100%" class="ticket-summary">
<tr>
<td valign="top" width="50%" class="boxcontainer">
<div class="ticket-info-basics">
<div class="titlebox ticket-info-basics" id="">
<div class="titlebox-title">
<span class="widget"><a href="#" onclick="return rollup('TitleBox--_Public_Bug_Display.html--ticket-info-basics----The Basics---0');" onfocus="this.blur(); return false;" title="Toggle visibility">X</a></span>
<span class="left"><a href="/rt3/Ticket/Modify.html?id=56748">The Basics</a></span>
<span class="right"></span>
</div>
<div class="titlebox-content " id="TitleBox--_Public_Bug_Display.html--ticket-info-basics----The Basics---0">
<table>
<tr>
<td class="label id">Id:</td>
<td class="value id">56748</td>
</tr>
<tr>
<td class="label status">Status:</td>
<td class="value status">resolved</td>
</tr>
<tr>
<td class="label time left">Left:</td>
<td class="value time left">0 min
</td>
</tr>
<tr>
<td class="label priority">Priority:</td>
<td class="value priority">0/0</td>
</tr>
<tr>
<td class="label queue">Queue:</td>
<td class="value queue">perl6
</td>
</tr>
</table>
<hr class="clear" />
</div>
</div>
</div>
<div class="ticket-info-people">
<div class="titlebox ticket-info-people" id="">
<div class="titlebox-title">
<span class="widget"><a href="#" onclick="return rollup('TitleBox--_Public_Bug_Display.html--ticket-info-people----People---0');" onfocus="this.blur(); return false;" title="Toggle visibility">X</a></span>
<span class="left"><a href="/rt3/Ticket/ModifyPeople.html?id=56748">People</a></span>
<span class="right"></span>
</div>
<div class="titlebox-content " id="TitleBox--_Public_Bug_Display.html--ticket-info-people----People---0">
<table>
<tr>
<td class="label">Owner:</td>
<td class="value">
Nobody
</td>
</tr>
<tr>
<td class="labeltop">Requestors:</td>
<td class="value">
moritz [at] casella.verplant.org
<br />
</td>
</tr>
<tr>
<td class="labeltop">Cc:</td>
<td class="value">
</td>
</tr>
<tr>
<td class="labeltop">AdminCc:</td>
<td class="value">
</td>
</tr>
</table>
<hr class="clear" />
</div>
</div>
</div>
</td>
<td valign="top" width="50%" class="boxcontainer">
<div class="ticket-info-cfs">
<div class="titlebox ticket-info-cfs" id="">
<div class="titlebox-title">
<span class="widget"><a href="#" onclick="return rollup('TitleBox--_Public_Bug_Display.html--ticket-info-cfs----Bug Information---0');" onfocus="this.blur(); return false;" title="Toggle visibility">X</a></span>
<span class="left"><a href="/rt3/Ticket/Modify.html?id=56748">Bug Information</a></span>
<span class="right"></span>
</div>
<div class="titlebox-content " id="TitleBox--_Public_Bug_Display.html--ticket-info-cfs----Bug Information---0">
<table>
<tr id="CF-18-ShowRow">
<td class="label">Severity:</td>
<td class="value">
<i>(no value)</i>
</td>
</tr>
<tr id="CF-19-ShowRow">
<td class="label">Tag:</td>
<td class="value">
Bug </td>
</tr>
<tr id="CF-20-ShowRow">
<td class="label">Platform:</td>
<td class="value">
<i>(no value)</i>
</td>
</tr>
<tr id="CF-21-ShowRow">
<td class="label">Patch Status:</td>
<td class="value">
<i>(no value)</i>
</td>
</tr>
</table>
<hr class="clear" />
</div>
</div>
</div>
<div class="ticket-info-links">
<div class="titlebox ticket-info-links" id="">
<div class="titlebox-title">
<span class="widget"><a href="#" onclick="return rollup('TitleBox--_Public_Bug_Display.html--ticket-info-links----Links---0');" onfocus="this.blur(); return false;" title="Toggle visibility">X</a></span>
<span class="left"><a href="/rt3/Ticket/ModifyLinks.html?id=56748">Links</a></span>
<span class="right"></span>
</div>
<div class="titlebox-content " id="TitleBox--_Public_Bug_Display.html--ticket-info-links----Links---0">
<table>
<tr>
<td class="labeltop">Depends on:</td>
<td class="value">
<ul>
</ul>
</td>
</tr>
<tr>
<td class="labeltop">Depended on by:</td>
<td class="value">
<ul>
</ul>
</td>
</tr>
<tr>
<td class="labeltop">Parents:</td>
<td class="value">
<ul>
</ul>
</td>
</tr>
<tr>
<td class="labeltop">Children:</td>
<td class="value"></td>
</tr>
<tr>
<td class="labeltop">Refers to:</td>
<td class="value">
<ul>
</ul>
</td>
</tr>
<tr>
<td class="labeltop">Referred to by:</td>
<td class="value">
<ul>
</ul>
</td>
</tr>
</table>
<hr class="clear" />
</div>
</div>
</div>
</td>
</tr>
</table>
<hr class="clear" />
</div>
</div>
</div>
<br />
<div class="titlebox " id="">
<div class="titlebox-title">
<span class="widget"><a href="#" onclick="return rollup('TitleBox--_Public_Bug_Display.html------History---0');" onfocus="this.blur(); return false;" title="Toggle visibility">X</a></span>
<span class="left">History</span>
<span class="right"><span style="color: black">Display mode:</span> <span class="selected">Brief headers</span> &mdash; <a href="/rt3/Ticket/Display.html?ShowHeaders=1;id=56748">Full headers</a></span>
</div>
<div class="titlebox-content " id="TitleBox--_Public_Bug_Display.html------History---0">
<div id="ticket-history">
<div class="ticket-transaction message odd">
<table width="100%" cellspacing="0" cellpadding="2" border="0">
<tr>
<td rowspan="2" valign="top" class="type">
<a name="txn-441284" href="/rt3/Ticket/Display.html?id=56748#txn-441284">#</a>
&nbsp;
</td>
<td class="date">Wed&nbsp;Jul&nbsp;09&nbsp;10:48:19&nbsp;2008</td>
<td class="description">
moritz <!-- x --> at verplant.org - Ticket created
</td>
<td class="time-taken"></td>
<td class="actions">&nbsp;</td>
</tr>
<tr>
<td colspan="4" class="content">
<table>
<tr>
<td align="right" class="message-header-key">Subject:</td>
<td class="message-header-value">[BUG] Null PMC access in type&#40;&#41;</td>
</tr>
<tr>
<td align="right" class="message-header-key">Date:</td>
<td class="message-header-value">Wed, 09 Jul 2008 20:06:13 +0200</td>
</tr>
<tr>
<td align="right" class="message-header-key">To:</td>
<td class="message-header-value">rakudobug <!-- x --> at perl.org</td>
</tr>
<tr>
<td align="right" class="message-header-key">From:</td>
<td class="message-header-value">Moritz Lenz &lt;moritz <!-- x --> at verplant.org&gt;</td>
</tr>
</table>
<div class="downloadattachment">
<a href="/rt3/Ticket/Attachment/441284/202426/">Download &#40;untitled&#41;</a>
<span class="downloadcontenttype">
[text/plain 441b]
</span>
</div>
<div class="messagebody">
<div class="message-stanza-depth-0">
I found a small piece of code that reproduces the &#34;Null PMC access in<br />
type&#40;&#41;&#34; error:<br />
<br />
sub f&#40;Int $n&#41;{<br />
if &#40;$n &gt;= 0 &#41;{<br />
f&#40;$n-1&#41;;<br />
}<br />
}<br />
f&#40;0&#41;;<br />
<br />
produces the above error on parrot + rakudo r29207, Debian GNU Linux<br />
i386 32bit.<br />
<br />
An even smaller example is<br />
sub f &#40;Int $n&#41; { f&#40;$n-1&#41; }; f&#40;0&#41;<br />
except that this one would loop infinitely if it weren&#39;t for the null<br />
PMC access.<br />
<br />
-- <br />
Moritz Lenz<br />
http://moritz.faui2k3.org/ | http://perl-6.de/<br />
</div>
</div>
</td>
</tr>
</table>
</div>
<div class="ticket-transaction other even">
<table width="100%" cellspacing="0" cellpadding="2" border="0">
<tr>
<td rowspan="2" valign="top" class="type">
<a name="txn-441290" href="/rt3/Ticket/Display.html?id=56748#txn-441290">#</a>
&nbsp;
</td>
<td class="date">Wed&nbsp;Jul&nbsp;09&nbsp;10:48:21&nbsp;2008</td>
<td class="description">
RT_System - Tag Bug added
</td>
<td class="time-taken"></td>
<td class="actions">&nbsp;</td>
</tr>
<tr>
<td colspan="4" class="content">
</td>
</tr>
</table>
</div>
<div class="ticket-transaction message odd">
<table width="100%" cellspacing="0" cellpadding="2" border="0">
<tr>
<td rowspan="2" valign="top" class="type">
<a name="txn-455914" href="/rt3/Ticket/Display.html?id=56748#txn-455914">#</a>
&nbsp;
</td>
<td class="date">Thu&nbsp;Aug&nbsp;07&nbsp;07:51:00&nbsp;2008</td>
<td class="description">
jnthn <!-- x --> at jnthn.net - Correspondence added
</td>
<td class="time-taken"></td>
<td class="actions">&nbsp;</td>
</tr>
<tr>
<td colspan="4" class="content">
<table>
<tr>
<td align="right" class="message-header-key">RT-Send-CC:</td>
<td class="message-header-value">perl6-compiler <!-- x --> at perl.org</td>
</tr>
</table>
<div class="downloadattachment">
<a href="/rt3/Ticket/Attachment/455914/210670/">Download &#40;untitled&#41;</a>
<span class="downloadcontenttype">
[text/plain 609b]
</span>
</div>
<div class="messagebody">
<div class="message-stanza-depth-0">
On Wed Jul 09 10:48:19 2008, moritz <!-- x --> at verplant.org wrote:<br />
<div class="message-stanza-depth-1">
&gt; I found a small piece of code that reproduces the &#34;Null PMC access in<br />
&gt; type&#40;&#41;&#34; error:<br />
&gt; <br />
&gt; sub f&#40;Int $n&#41;{<br />
&gt; if &#40;$n &gt;= 0 &#41;{<br />
&gt; f&#40;$n-1&#41;;<br />
&gt; }<br />
&gt; }<br />
&gt; f&#40;0&#41;;<br />
&gt; <br />
&gt; produces the above error on parrot + rakudo r29207, Debian GNU Linux<br />
&gt; i386 32bit.<br />
&gt; <br />
</div>
I fixed a while ago the bug that prevented us seeing the real exception.<br />
Today I have fixed the root cause of this, which was the type check<br />
failure. So this now runs as it should &#40;I stuck a &#34;say $n&#34; in and tried<br />
it with f&#40;4&#41; and so forth, and it works as expected&#41;.<br />
<br />
Thanks,<br />
<br />
Jonathan<br />
</div>
</div>
</td>
</tr>
</table>
</div>
<div class="ticket-transaction basics even">
<table width="100%" cellspacing="0" cellpadding="2" border="0">
<tr>
<td rowspan="2" valign="top" class="type">
<a name="txn-455918" href="/rt3/Ticket/Display.html?id=56748#txn-455918">#</a>
&nbsp;
</td>
<td class="date">Thu&nbsp;Aug&nbsp;07&nbsp;07:51:02&nbsp;2008</td>
<td class="description">
RT_System - Status changed from &#39;new&#39; to &#39;open&#39;
</td>
<td class="time-taken"></td>
<td class="actions">&nbsp;</td>
</tr>
<tr>
<td colspan="4" class="content">
</td>
</tr>
</table>
</div>
<div class="ticket-transaction basics odd">
<table width="100%" cellspacing="0" cellpadding="2" border="0">
<tr>
<td rowspan="2" valign="top" class="type">
<a name="txn-455922" href="/rt3/Ticket/Display.html?id=56748#txn-455922">#</a>
&nbsp;
</td>
<td class="date">Thu&nbsp;Aug&nbsp;07&nbsp;07:51:02&nbsp;2008</td>
<td class="description">
jnthn <!-- x --> at jnthn.net - Status changed from &#39;open&#39; to &#39;resolved&#39;
</td>
<td class="time-taken"></td>
<td class="actions">&nbsp;</td>
</tr>
<tr>
<td colspan="4" class="content">
</td>
</tr>
</table>
</div>
</div>
<hr class="clear" />
</div>
</div>
</div>
<hr size=0>
<div>
For issues related to this RT instance (aka "perlbug"), please contact <tt>perlbug-admin at perl.org</tt>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-50555-18");
pageTracker._initData();
pageTracker._trackPageview();
</script>
<div id="footer">
<p id="time">
<span>Time to display: 0.835363</span>
</p>
<p id="bpscredits">
<span>
&#187;&#124;&#171; RT 3.6.HEAD Copyright 1996-2006 <a href="http://www.bestpractical.com?rt=3.6.HEAD">Best Practical Solutions, LLC</a>.
</span>
</p>
</div>
</body>
</html>