--- Comment #2 from Walter Bright <> 2012-01-20 
12:33:25 PST ---
A reduced test case:

  import std.math;
  void map(real function(real) f) { }
  void main() { map(&sqrt); }

What is happening here is that sqrt() is an intrinsic, it doesn't actually
exist in the libphobos2.a. When compiled with -release, the assert() goes away,
and sqrt is never referenced, hence no error.

Without -release, the linker looks for std.math.sqrt, and can't find it because
it's an intrinsic.

The solution is one of:

1. have the compiler complain about attempts to take the address of an

2. add a library version of the intrinsic

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to