Compilerfehler C0035 nach Update 4024 -> 4026

roboticBeet

Level-2
Beiträge
479
Reaktionspunkte
194
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,
nach dem Update von TwinCAT 4024 auf 4026 erhalten wir neuerdings beim Erstellen des SPS Projekts einen Compilerfehler, welchen ich mir nicht erklären kann.

Die betroffenen FBs liegen in Bibliotheken, welche auch fehlerfrei unter TwinCAT 4026.15 übersetzt wird. Werden die FBs aus dieser Bibliothek aber in einem Maschinenprojekt genutzt, tritt folgender Fehler auf:
C0035: Programmname, Funktion oder Funktionsbausteininstanz an Stelle von 'FAILED' erwartet

Dieser Fehler tritt sowohl bei einer eigenen Bibliothek auf als auch bei Beckhoff Bibliotheken (Tc3_Eventlogger 3.3.13.0 und Tc3_Module 3.4.5.0), wobei die eigene Bibliothek vor allem ein Wrapper für den Tc3_Eventlogger ist. Außerdem treten im Compiler für jeden C0035 Fehler auch eine C0231 Folgefehler auf, welcher besagt, dass an der jeweiligen Codestelle ein boolescher Ausdruck erwartet wird. Das ist für mich ein stimmiger Folgefehler, da alle angemerkten Codestellen in der eigenen Bibliothek so oder so ähnlich aussehen:

Code:
IF( Tc3_Module.FAILED(_hr) )
THEN
    [...]

Ihm fehlt im Folgefehler also der passende Ausdruck für die IF-Anweisung.

Laut Deklaration in der Tc3_Module Bibliothek ist FAILED auch nach wie vor eine Funktion mit einem booleschen Rückgabewert. Passt also eigentlich gar nicht zur Fehlermeldung.

Würde der Fehler nur in eigenen Bibliotheken auftreten, würde sich sicherlich eine schnelle Lösung (zur Not Workaround) finden. Mich irritiert aber, dass der Fehler auch in den Beckhoff Bibliotheken auftritt.

Hat jemand von euch einen Tipp oder Erfahrungen?
 
Ich habe das mal eben unter 4026.14 getestet, da schien es zu laufen, hatte die Funktion aber bisher nicht im Projekt genutzt und jetzt erst hinzugefügt.
Ist im Bibliotheksmanager bei der TC3_Module eventuell eine Version fest vorgegeben? Falls ja, ändre das doch mal so, dass immer die neueste Version genommen wird oder ändere die Versionsnummer mal auf eine neuere Version, falls verfügbar.
 
Zurück
Oben