Hi all (especially Robin and Thomas!) -- I was just looking through the new registry-grovelling code in msvccompiler.py, making some stylistic changes, when I noticed the following in '_find_exe()' (comments added by me): try: for p in string.split(os.environ['Path'],';'): fn=os.path.join(os.path.abspath(p),exe) if os.path.isfile(fn): return fn # XXX BAD BAD BAD BAD BAD BAD BAD BAD BAD BAD BAD BAD !!!!!!!!!!!!!!!! except: # XXX WHAT'S BEING CAUGHT HERE?!?!? pass What is this 'except' clause supposed to catch? Other changes: I have renamed '_devstudio_versions()' to 'get_devstudio_versions()' because it's more descriptive and I don't see a big need for the leading underscore; likewise '_msvc_get_paths()' is now 'get_msvc_paths()'. I've changed the 'get_devstudio_versions()' docstring to: """Get list of devstudio versions from the Windows registry. Return a list of strings (???) containing version numbers; the list will be empty if we were unable to access the registry (eg. couldn't import a registry-access module) or the appropriate registry keys weren't found. (XXX is this correct???)""" Input, please? I'd like a similarly explicit and useful docstring for 'get_msvc_paths()', but don't understand it well enough to write one: could someone supply me one please? Oh yeah, I'm mystified by the purpose for '_find_SET()' and '_do_SET()'. Could I get docstrings for those please? Better parameter names (full words, not single characters!) might help. Also, the real reason I went off on this tangent was because we get an even *worse* traceback than before now on machines without MSVC++ (eg. my Linux box being told to use an MSVCCompiler object, which used to work just fine in dry-run mode). In particular, it blows up because 'get_devstudio_versions()' returns None, but '_find_exe()' expects a sequence. My inclination is to fix 'get_devstudio_versions()' to always return a list, empty if the imports failed. Ditto for 'get_msvc_paths()' for consistency. Anyone see a problem with this? (I.e., are we ever going to need to distinguish "couldn't find anything in the registry" from "couldn't access the registry at all"?) Thanks -- Greg -- Greg Ward - Linux geek gward@python.net http://starship.python.net/~gward/ "He's dead, Jim. You get his tricorder and I'll grab his wallet."