This reverts commit e3b1083e. This was reverted because it breaks a number of libstdc++ examples, AND required a workaround that causes hiding of legitimate bugs.