remove generated files
fix: use decltype instead of GNU typeof extension