<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 12 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        text-align:right;
        direction:rtl;
        unicode-bidi:embed;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang="EN-US" link="blue" vlink="purple">

<div class="Section1">

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">Hi,</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">I&#39;m
using IronPython 2.6 final. </p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">When
deriving from Exception class, and creating a constructor with a different
signature (not 1 argument), I get an exception when pickling and unpickling.</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">Seems
like the pickling process &quot;neglects&quot; some of the information so the
unpickling fails.</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">This
can be reproduced with:</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"> </p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">&gt;&gt;&gt;
class my_exc(Exception):</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">...    
def __init__(self, message, param):</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">...            
super(my_exc, self).__init__(message)</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">...            
self.param = param</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">...<span lang="HE" dir="RTL" style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;"></span></p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"><span dir="LTR"></span><span dir="LTR"></span><span dir="LTR"></span><span dir="LTR"></span>&gt;&gt;&gt;
e = my_exc(&#39;message&#39;,&#39;param&#39;)</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">&gt;&gt;&gt;
import pickle</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">&gt;&gt;&gt;
pickle.loads(pickle.dumps(e))</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">Traceback
(most recent call last):</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"> 
File &quot;&lt;stdin&gt;&quot;, line 1, in &lt;module&gt;</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"> 
File &quot;C:\Systems\3rd_party\IronPython\2.6\Lib\pickle.py&quot;, line 1374,
in loads</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"> 
File &quot;C:\Systems\3rd_party\IronPython\2.6\Lib\pickle.py&quot;, line 858,
in load</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"> 
File &quot;C:\Systems\3rd_party\IronPython\2.6\Lib\pickle.py&quot;, line 1133,
in load_reduce</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">TypeError:
__init__() takes exactly 3 arguments (2 given)</p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"> </p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed"> </p>

<p class="MsoNormal" style="text-align:left;direction:ltr;unicode-bidi:embed">Thanks.</p>

</div>

</body>

</html>