add c+11 support