www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - _d_notify_release !?!?!

reply John Demme <me teqdruid.com> writes:
What does this mean?  One of my test programs (which used to work) now
outputs this.  Seems to happen right after a function returns.

_d_notify_release(o = 0xf7d0ae80)

This has got to be a DMD bug... at the very least, the bug is the error
message not having an intelligible message.

For reference, the function is:

void ConcurrentHashMap1() {
  ConcurrentHashMap!(int,int) mapA = new ConcurrentHashMap!(int,int)();
  mapA.put(1,2);
  mapA.put(3,6);
  mapA.put(4,8);

  assert(mapA.get(4) == 8);
  mapA[5] = 10;
  mapA.remove(5);
  assert(mapA.keySet().contains(3));
  assert(mapA.valueSet().contains(8));
  assert(mapA.size == 3);

  int value;
  mapA.remove(4,value);
  mapA.put(5,value);
  assert(mapA[5] == value);
}

And it's in mango.test.containers in the mango SVN repos.

-- 
~John Demme
me teqdruid.com
http://www.teqdruid.com/
Nov 01 2006
parent reply Sean Kelly <sean f4.ca> writes:
John Demme wrote:
 What does this mean?  One of my test programs (which used to work) now
 outputs this.  Seems to happen right after a function returns.
 
 _d_notify_release(o = 0xf7d0ae80)

It's some debugging code that was left turned on in internal/object.d by accident. The message is printed when an object monitor is released during object deletion/collection. To get rid of it, comment out internal/object.d:211 and rebuild Phobos. Sean
Nov 01 2006
next sibling parent John Demme <me teqdruid.com> writes:
Sean Kelly wrote:

 John Demme wrote:
 What does this mean?  One of my test programs (which used to work) now
 outputs this.  Seems to happen right after a function returns.
 
 _d_notify_release(o = 0xf7d0ae80)

It's some debugging code that was left turned on in internal/object.d by accident. The message is printed when an object monitor is released during object deletion/collection. To get rid of it, comment out internal/object.d:211 and rebuild Phobos. Sean

Ahh. That makes sense. It was only two functions in my code that was doing it, so I thought the code was malfunctioning. If I can just ignore it, I don't care. Thanks -- ~John Demme me teqdruid.com http://www.teqdruid.com/
Nov 01 2006
prev sibling parent Brad Roberts <braddr puremagic.com> writes:
John Demme wrote:
 Sean Kelly wrote:
 
 John Demme wrote:
 What does this mean?  One of my test programs (which used to work) now
 outputs this.  Seems to happen right after a function returns.

 _d_notify_release(o = 0xf7d0ae80)

accident. The message is printed when an object monitor is released during object deletion/collection. To get rid of it, comment out internal/object.d:211 and rebuild Phobos. Sean

Ahh. That makes sense. It was only two functions in my code that was doing it, so I thought the code was malfunctioning. If I can just ignore it, I don't care. Thanks

A quick search in bugzilla yields: http://d.puremagic.com/bugzilla/show_bug.cgi?id=457 Later, Brad
Nov 01 2006