zu 1: Die Warnungen sollte man beseitigen, vor allem wenn man die genaue Ursache nicht kennt.

zu 2: Die Funktion wird aufgerufen bevor sie definiert wird. Daher die Warnung. Es wird dann eine Dummy-definition angelegt. Diese Warnung sollte man ernst nehmen. Es ist nur aus Kompatibilitätsgründen kein echter Fehler.

zu 3: Die Definition vom 1. Aufruf stimmt nicht mit der späteren (zu spät) Definition überein. Das kann ggf. einfach ein Folgefehler sein, von der 1. Warnung.