Bitte um Hilfe: Ich finde die Ursache der komischen Fehler nicht.

OP #7836199
Lesenswert?

Hallo,

Bei einem größeren Projekt mit SAMD21E und AT Studio 7 lies sich bis vor Kurzem das Programm ohne Fehler übersetzen. Nach einigen (unverdächtigen) Änderungen wirft der Linker auf einmal komische Fehlermeldungen aus - siehe Anhang. Weil ich schonmal in der .h den Strichpunkt hinter einer Funktion vergaß, weiß ich was für eine Flut an seltsamen Meldungen aufpoppen, nur wegen winziger Fehler. Sowas vermute ich auch, habe aber schon die ganzen Differenzen zur fehlerfreien Version gecheckt. Die sind alle unverdächtig. Weiß jemand irgend was, wo ich suchen könnte?

Angehängte Dateien:
#7836280
Lesenswert?

Wohl dem, der eine Revisionsverwaltung hat und diese auch nutzt.

Die gibt es für lau im Netz und wenn man will, kann man jederzeit den "Rückwärtsgang" einlegen. Natürlich muss man sich angewöhnen diese auch zu nutzen und dann - "Oh wie schrecklich!" - einen Kommentar abgeben um die Änderung zu bezeichnen.

(Firma: Gast) #7836324
Lesenswert?

Alex schrieb:

Also kommen jetzt keine weiteren sachdienlichen Hinweise mehr?

Ich unterscheide ganz gerne zwischen technischen Problemen und sozialen Problemen.

Soziale Probleme kann man meist dadurch bearbeiten, dass man darüber redet. Und während man darüber redet, ändert sich das Problem, oder die Einstellung dazu ändert sich. Was beides im Endeffekt auf das gleiche herausläuft. Auf technische Probleme lassen sich die sozialen Lösungsstrategien selten anwenden.

Bei technischen Problemen:

  1. Problem analysieren
  2. Lösung erarbeiten
  3. Lösung durchsetzen.

Punkt 1 erfordert umfangreiche Kenntnisse über das Problem selber, über den Kontext. Die Anwendung technischer Strategien, auf soziale Probleme, führen gerne zu gruseligen Lösungen, z.B. Guillotine, Elektrischer Stuhl usw.

War das sachdienlich?

Persönliche Seite #7836333
Lesenswert?

Hässlicher Trick: Die fehlenden Funktionen (_write etc.) als Dummy leer implementieren. Disassembly erzeugen und schauen wo malloc(), printf(), puts() etc. aufgerufen werden.

Thomas Z. schrieb:

Kann es sein dass es sowas wie ein Debug_Printf gibt ev in einem Macro versteckt?

Wäre auch meine Vermutung. Oder: es wird assert() genutzt, welches standardmäßig printf() und abort() aufruft. Im Release-Build wird per -DNDEBUG das assert() deaktiviert.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren