It is a tight connection, but if the airline booked it, your friend will be protected on the next flight out to YYC. CX's flight gets in about 20-minutes before the SQ one, so I suspect there will be major lines through Immigration/Customs at that hour. If s/he can rebook, it will save the stress of knowing it will be a tight connection.