Download Reference Manual
The Developer's Library for D
About Wiki Forums Source Search Contact

Ticket #819 (closed task: wontfix)

Opened 9 months ago

Last modified 5 months ago

Invariant does not check for (object !is null) in release mode Tango.

Reported by: Hxal Assigned to: sean
Priority: minor Milestone: 0.99.6
Component: Core Functionality Version: 0.99.3 Triller
Keywords: Cc:

Description

The function _d_invariant to which calls are generated when compiling in debug mode performs an assertion on the object not being null. When Tango is not compiled in debug mode that assertion is not included, causing a segfault when the invariant is called on null objects. This happens when Tango runtime is compiled in release mode and the user code is compiled in debug mode, which is a valid situation. I suggest changing the assertion to an if test throwing an exception.

Change History

12/14/07 04:12:22 changed by larsivi

I'd prefer just linking in a debug build of Tango when building your app in debug mode, and since such a version of Tango is planned, that may be good enough?

12/14/07 08:49:36 changed by larsivi

  • type changed from defect to task.

This is in any case not a defect, the current operation is intentional. I'd say no to this.

02/23/08 00:37:43 changed by kris

  • milestone set to 0.99.6.

04/12/08 17:14:59 changed by larsivi

  • status changed from new to closed.
  • resolution set to wontfix.

See #739 for a debug build to be linked automatically in debug mode. Closing this as wontfix.