commit | e738b8cbe64b6dd3ed9f47b6d4cd7eb2c422b38d | [log] [tgz] |
---|---|---|
author | Rich Felker <dalias@aerifal.cx> | Tue Aug 30 16:39:54 2016 -0400 |
committer | Rich Felker <dalias@aerifal.cx> | Tue Aug 30 16:39:54 2016 -0400 |
tree | 493734a392e2dfc2f84e8a5c92c4c848b2752794 | |
parent | 397586625e71d166f493f16bfe04f3005ae464c3 [diff] |
restore _Noreturn to __assert_fail this reverts commit 2c1f8fd5da3306fd7c8a2267467e44eb61f12dd4. without the _Noreturn attribute, the compiler cannot use asserts to perform reachability/range analysis. this leads to missed optimizations and spurious warnings. the original backtrace problem that prompted the removal of _Noreturn was not clearly documented at the time, but it seems to happen only when libc was built without -g, which also breaks many other backtracing cases.