TMinuit again

From: Martin Woudstra (woudstra@nikhef.nl)
Date: Thu Mar 13 1997 - 13:16:38 MET


Hello,

I changed the code to mnexcm, but it still crashes.
In fact, I tried this command before, it crashed, and I tried
the other one (mncomd).

The code:

    Double_t PrintOutLevel = -1;	// default no minuit output
    if (DebugLevel)
    {
	PrintOutLevel = min(DebugLevel - 1, 3);	// set minuit output level
(3=maximum)
    }
    Int_t ierr = 0;
    gMinuit->mnexcm("set print", &PrintOutLevel, 1, ierr);



run-time error:

 *** Break *** segmentation violation

( 0)  0xc1a0f320   StackTrace__11TUnixSystemFv + 0x30
[/localdisk/woudstra/root/lib/libUnix.sl]
( 1)  0xc1a0dc7c   DispatchSignals__11TUnixSystemF8ESignals + 0x12c
[/localdisk/woudstra/root/lib/libUnix.sl]
( 2)  0xc1a0c804   SigHandler__F8ESignals + 0x2c
[/localdisk/woudstra/root/lib/libUnix.sl]
( 3)  0xc1a10dc4   sighandler__Fi + 0x5c
[/localdisk/woudstra/root/lib/libUnix.sl]
( 4)  0xc01264d8   _sigreturn  [/usr/lib/libc.1]
( 5)  0xc1b61dfc   mnexcm__7TMinuitF7TStringPdiRi + 0x114
[/localdisk/woudstra/root/lib/libMinuit.sl]
( 6)  0x0001415c   Init__9CGeometryFPcR15CAlignmentTypes + 0x660
[.//geofix]
( 7)  0x0000b010   main + 0x3c0  [.//geofix]
( 8)  0xc0077abc   _start + 0x8c  [/usr/lib/libc.1]
( 9)  0x00008344   $START$ + 0x134  [.//geofix]


In the debugger I find a strange thing, the type of 
PrintOutLevel seems to be va_list instead of Double_t;
(the type of ierr is OK: Int_t)
Is this maybe the cause of the crash?
And what causes this strange behaviour (I've had it before).
Is it the CC compiler, or the ld linker or what?

I hope you can clarify this problem to me.

Martin.



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:26:18 MET