[phobos] Proposed feature: print cycle when a module cyclic dependency is detected
Steve Schveighoffer
schveiguy at yahoo.com
Tue Jun 22 10:35:17 PDT 2010
For those who are interested, it was nothing that I did. I updated the branch from trunk and somehow the new import paths caused a problem. Although I can't say that the original branch worked, because I never got it to compile on Windows.
Lars had put a new static this() function inside process.d that really belongs in std.stdio, except that bug 3979 prevents it from working.
So I'm sorta stuck now...
*sigh*
-Steve
----- Original Message ----
> From: Steve Schveighoffer <schveiguy at yahoo.com>
> To: Phobos <phobos at puremagic.com>
> Sent: Tue, June 22, 2010 8:59:23 AM
> Subject: [phobos] Proposed feature: print cycle when a module cyclic dependency is detected
>
> Hi all,
Recently, I had an issue when developing std.process. I
> inadvertently caused a cyclic dependency in modules. However, the error
> was not enough to find the problem:
object.Exception: Cyclic dependency
> in module std.stdio
The problem is, this is the *end* of the cycle, not
> the source. I actually hadn't changed the imports of std.stdio.
So
> I improved the module constructor function to automatically print all modules
> involved in the cycle, in the order they were imported. Attached is the
> patch. The function should not adversely affect the runtime in normal
> operation, since the changes I made only occur when a terminating exception is
> about to be thrown anyways. Do people agree this is a worthy improvement
> to the runtime? Anyone see any issues with the patch? If everyone likes,
> I'll commit.
-Steve
More information about the phobos
mailing list