dotgnu-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [DotGNU]<PNET> parameter passing bug ?


From: Rhys Weatherley
Subject: Re: [DotGNU]<PNET> parameter passing bug ?
Date: Sun, 27 Jan 2002 13:05:02 +1000

"Gopal.V" wrote:

>     Ok, but the first place I encountered the exception was not
> in the afore mentioned test case. It was in the CGI program.
> Code attatched. Testing it might reveal a *new* bug........
> How many times should the "what kind....." message print
> with the following code ? Once, right..but it prints until
> the stack overflows .....(509 times). In a seperate test case,
> this error never happens. So I'm sending you my whole code
> hoping that the error is repeatable.

Another linker bug due to forward references, which caused
it to recursively call Main indefinitely.  The previous linker
bug was a forward reference across classes.  This one
was due to a forward reference within the same class.

Fixed now.  You will need to comment out the call to
"req.GetEnvVars" in "Main", or the program will throw
"NullReferenceException" due to uninitialised data.
With that change, the output is:

What error could this be ?
ReadRequest()::foo=baz&
ParseQuery()::foo=baz&
foo => baz

Here is how I detected that it was a linker bug.  This may
be helpful to you in the future:

1. Compile the .cs file to .il using the "-S" option on cscc.
2. Edit the .il file to tag the "Main" method with ".entrypoint".
3. Assemble the .il to .exe using "ilasm -e input.il".

This process bypasses the linker.  If the result of this
process runs fine, but a regular compile doesn't, then
the bug is in the linker.

Cheers,

Rhys.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]