franky starts porting the code to clang