improve compiler detection, update #1613