pass all data to print a meaningful error message into eval()