<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">For example, the Swift standard library might want to ensure that you use "preconditionFailure()" instead of "precondition(false)" since the former doesn’t get in the way of constant/variable initialization static analysis.<div class=""><br class=""></div><div class="">So maybe allow functions to have a warning clause with an abstract syntax tree parameter allowing the function to examine its usage context in the source code and issue warnings correspondingly that appear during the compile.</div><div class=""><br class=""></div><div class="">Here’s some related work:&nbsp;<a href="https://msdn.microsoft.com/en-us/magazine/dn879356.aspx" class="">https://msdn.microsoft.com/en-us/magazine/dn879356.aspx</a></div><div class=""><br class=""></div></body></html>