[Python-projects] pylint version 0.16.0 doesn't complain about uninitialized variable

Mads Kiilerich mads at kiilerich.com
Thu Mar 5 13:50:02 CET 2009


Dotan Barak wrote:
> Hi.
>
> I have the following function in my code:
>
> <--snip start-->
> import os
> import shutil
>
> def clear_temp_folder(temp_path):
>     """ Remove old temporary folder if exists."""
>
>     if os.path.exists(temp_path):
>         try:
>             shutil.rmtree(temp_path)
>             rc = 0
>         except OSError:
>             rc = 1
>         if rc:
>             print "Error, failed to remove old temporary path %s" % temp_path
>             return rc
>
>     return rc
> <--snip end-->
>
>
> From doing code review by eye, i found out that the variable rc can be
> returned without any initialization,
> but the pylint could not find it.
>   

Yes, pylint doesn't handle conditional code blocks.

A very similar issue was discussed "briefly" in the thread at 
http://lists.logilab.org/pipermail/python-projects/2009-February/001689.html 
, but I don't think any tracker issue was filed...

/Mads



More information about the Python-Projects mailing list