Compatible with the latest compiler