Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Sinnvolle! Fehlermeldungen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Zitat von klaus_kraemer Beitrag anzeigen
    Warum gibt es denn hier keine Datei- und Zeilenangabe???
    In irgendeiner Quelldatei und dort in irgendeiner Zeile muss FW_isHeizbedarf doch stehen! Hier keine Quellangabe zu machen, zwingt zur mühsamen Fehlersuche, dabei wär' es doch nicht sonderlich schwer
    In diesem Fall ist es etwas anders:
    Wir erlauben folgendes:
    Code:
    // Verarbeitung von a
    if a>2 then write(...) endif
    // Hier wird erst a definiert
    a=3
    Der Compiler "pushed" daher die Variable und sagt beim if: Ok - "a" kenn ich nicht, muss aber vom Typ u08 sein (wegen des Vergleichs) und der parser-Teil akzeptiert dies. Damit wird das Objekt a erstmal generiert. Am Ende, wenn alles eingeparst ist, checkt der Compiler nun alle Objekte und erkennt, dass das Objekt nie definiert wurde. Die Definition fehlt einfach gänzlich, daher kann der Compiler auch nicht wahrsagen, an welcher Stelle das nun zu sein hätte. Es kann ja vor oder nach der eigentlichen "Verwendung" sein.
    EibStudio sucht das erste Verwenden im Code, und geht mit der Fehlermarkierung an diese Stelle. Derzeit allerdings nicht in den Macroexpansionen. Das kann ich mal gerne als Featurewunsch aufnehmen. Es wäre dann aber auch nur so, dass dann die erste Verwendung gefunden wird...
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      #32
      Das erste Auftreten einer nichtdefinierten Variable wäre dann ja zunächst auch die Fehlerstelle. Bei mir war sie halt nur falsch geschrieben - aber deswegen so eine Sucherei zu veranstalten war "not amusing". In diesem Fall hatte ich beim Wechsel von Fenster zu Fenster wohl einmal versehentlich die Leertaste erwischt, denn es sollte heißen FW_isHeizbedarfFbh...

      Ich denke, ein Compiler sollte so grundlegende Dinge wirklich hinbekommen, damit man seine Zeit fürs Wesentliche - das Programmieren - verwenden kann. Daher würde ich das nicht direkt als Featurewunsch, sondern als Featuremuss bezeichnen. Aber Danke schonmal für die Bereitschaft, das auf die Liste zu setzen.

      Ach ja, natürlich war's in einem Makro und die bearbeite ich fast notgedrungen mit Notepad++, also wären Dateiname und Fehlerzeile auf jeden Fall nötig. Ach, wenn das Eibstudio doch ein wenig moderner wär...
      Zuletzt geändert von klaus_kraemer; 20.03.2015, 18:32.

      Kommentar


        #33
        Zitat von klaus_kraemer Beitrag anzeigen
        Ach ja, natürlich war's in einem Makro und die bearbeite ich fast notgedrungen mit Notepad++, also wären Dateiname und Fehlerzeile auf jeden Fall nötig.
        So wie das jetzt realisiert ist, macht das das EibStudio und nicht der Compiler => wird schwierig.

        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
        Enertex Produkte kaufen

        Kommentar


          #34
          ich nutz' auch notepad- +, da gibt es einen kleinen Trick:

          du kannst in allen Dateien suchen - gib' als Suchtext einfach den monierten Begriff ein und gehe dann auf "in Dateien suchen" wenn du auf *epc eingrenzt, dann werden die Fundstellen in den *.bak ignoriert
          EPIX
          ...und möge der Saft mit euch sein...
          Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

          Kommentar


            #35
            Danke EPIX, das hatte ich dann auch so gemacht...

            Gestern fehlte mir ein abschließendes ";" hinter einem endif. Lapidar wurde ein Syntaxfehler gemeldet, kein Hinweis auf Fehlerart und genaue Fehlerstelle - hier kannst Du nicht einmal vernünftig nach einem Text suchen. Wenn der Compiler schon merkt, dass an einer Stelle was nicht stimmt, soll er halt sagen, wo... Ich bringe mein Auto auch nicht mit einem Defekt in die Werkstatt und sage "Da habt Ihr den Karren, irgendwas geht nicht, jetzt sucht mal schön...."

            Ich mag verwöhnt sein von Produkten wie Visual Studio u.ä. - aber ich glaube, die nächste Entwicklungsstufe um den eibPC sollte eine zeitgemäße (oder wenigstens zeitgemäßere) Programmierumgebung sein.
            Zuletzt geändert von klaus_kraemer; 21.03.2015, 14:22. Grund: Orthographie und Grammatik

            Kommentar

            Lädt...
            X