fixed looser throw specifier bug, appearing with gcc 4.6.3+