[Bug c++/34774] [4.1/4.2 Regression] templates, enumerations, overflow, ice

tbptbp at gmail dot com gcc-bugzilla@gcc.gnu.org
Wed Feb 13 17:22:00 GMT 2008



------- Comment #18 from tbptbp at gmail dot com  2008-02-13 17:21 -------
Ah ah!
[svn pull... build...]
Sadly it makes no difference yet, most certainly because of all the kludges i
had to stuff in: out of the 2213 tests (from the ucb-corpus for +,-,*,/,sqrt)
there's still 3 of them (all additions) that g++ refuses to 'fold' completly
mov    0x200627(%rip),%edx        # 600c88 <metafloat::float_t<2097152u, 131,
0u, (metafloat::category_t)0>::fp32>
mov    0x200626(%rip),%esi        # 600c90 <metafloat::float_t<8353000u, 147,
0u, (metafloat::category_t)0>::fp32>
mov    0x200616(%rip),%edx        # 600c8c <metafloat::float_t<11400u, 147, 0u,
(metafloat::category_t)0>::fp32>
So close to perfection...
And then the compile-time 'raytracer' is still fubar :)
Compilation is definitely faster, but i only have a debian 4.3 snapshot to
compare against and i suppose some checkings are enabled.

I guess i'll have to get back to it, remove all those ugly workarounds and see
if it can handle it now.

Many thanks for your efforts.

PS:
  http://ompf.org/stuff/metafloat/
  http://ompf.org/stuff/metafloat/dist/ <-- tarball here


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774



More information about the Gcc-bugs mailing list