add clang's block support by vvalkyrie