<div dir="ltr"><div>Aside from the optimization errors I recently reported, the only other impediment to compiling unmodified NAMD with bgclang is a big pile of errors of the following nature:<br>====<br>error: C-style cast from 'double' to 'vector4double' is not allowed<br>

  vector4double fullvirial_v0   = (vector4double) (0.0);<br>====<br></div><div>The desired semantics of statements like this are pretty straightforward, and don't seem to conflict with anything else. bgxlc is happy to accept these statements, so this can be viewed as a (hopefully unintended) compatibility limitation.<br>

</div><div><br></div><div>If there's a more portable way to express this construct, I might be able to pass a patch up to the NAMD developers.<br></div><div><br></div>These were avoided by disabling the QPX-specialized code, and using the portable C/C++ versions instead. So, I was finally able to compile and link a NAMD binary using purely the bgclang toolchain. If I encounter subsequent runtime trouble, I'll follow up with another post.<br>

</div>