| |
|
|
E.T. | Bei folgendem Code: KompilierenMarkierenSeparieren bringt mir XPSE:
XProfan 11.2.1.8a.54 Praekompiler [XPSE] Copyright (C) 1998-2010 XProfan.Com, built DE. Datei: e:profan 11-proggsduplfinderduplpicfinder.prf (108) Warnung: "if" erwartet Naehe: ~98, ENDIF Mapfile: angewiesen [Compile [Interpr [Link [RunPrc Run[Exe [Source [Hilfe Run-Prf: Error, interpretieren mit Warnungen nicht empfohlen. XPSE:>
Seh ichs vielleicht mal wieder nicht ??? Wenn die obige passage auskommentiere, funzt es (und nat. auch mit {noerr} ) |
|
|
| Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 11.03.2010 ▲ |
|
|
|
|
| Ist ja echt scharf, was habe ich da angestellt.
Melde mich wenn eingekreist! |
|
|
| |
|
|
|
| Problem ist direkt hinter dem if, in nächster Version behoben. |
|
|
| |
|
|
|
| Problem ist in aktueller Version 11.2.1.8a.58 (Direktdownload: [...] ) behoben. |
|
|
| |
|
|
|
Stephan Sonneborn | Hallo iF,
habe das gleiche Problem mit der aktuellen Version und kann auch kein fehlendes IF entdecken.
Da ich mich bisher sehr wenig mit dem XPSE beschäftigt habe, fehlt mir bei der Angabe des Warnung, wo genau der Fehler auftritt, also in welcher Zeile des jeweiligen Qeullcodes. Der XPSE bastelt ja vermutlich aus allen Profan-Quelltexten einen Gesamtquelltext und verliert dabei den Bezug zu den einzelnen z.B. Include-Dateien. Um einen Fehler aber besser einkreisen zu können, wären diese Angaben aber echt nützlich. Kann ich mir das irgendwie trotzdem ausgeben lassen, in welcher Quelltext-Datei zeilengenau der Fehler auftritt?
Bei meinem Programm wirft der XPSE zunächst in runden Klammern (6538) nach dem *.prf aus. Ich nehme an, das sind die effektiven Quellcodezeilen (also ohne Kommentar). Dann bringt mir der XPSE eine Warnung, dass ein ENDIF fehlt in der Naehe von ~6236. Ich vermute mal das sind etwa 302 echte Quellcodezeilen vor dem Programmende. Das lässt sich noch einigermaßen finden, weil es sich dann schon wieder im Hauptprogramm befinden muss (nach dem Aufruf der Includes kommen noch einige hundert Zeilen im Hauptprogramm). Aber was wäre, wenn der Fehler bei Zeile 2576 auftritt? Wie finde ich das denn im Quellcode? Dient dazu Nicos "MapFile: angewiesen"?
Und noch eine Frage: Muss {$CLEQ} und {$RUNTIME param} im Quellcode stehen oder kann man das dem XPSE auch als Kommandozeilenbefehl übergeben? |
|
|
| Schöne Grüße aus Wittgenstein von Stephan
Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz | 14.04.2012 ▲ |
|
|
|
|
| Hallo Stephan.
Dann bringt mir der XPSE eine Warnung, dass ein ENDIF fehlt in der Naehe von ~6236.
Die Meldungen beziehen sich auf die sog. "ENH"-Datei - diese Datei beinhaltet den Code der letztendlich an den XProfan-Kompiler übergeben wird.
habe das gleiche Problem mit der aktuellen Version und kann auch kein fehlendes IF entdecken.
Sorry, das ist natürlich blöd.
Zeigt er Dir einen Funktionsnamen in dem der Fehler sein soll bzw. könntest Du mal einen Consolendump oder Screenshot zeigen? Falls Du mir das Projekt zukommen lassen könntest würde ich damit das Problem auch herausbekommen.
Dient dazu Nicos "MapFile: angewiesen"?
Nein da gehts um Units.
Muss {$CLEQ} und {$RUNTIME param} im Quellcode stehen oder kann man das dem XPSE auch als Kommandozeilenbefehl übergeben?
Jain, als Kommandozeilenparameter kann man die Runtime jedoch ganz absichtlich nicht bestimmen - damals entstanden um mit allen möglichen IDEs zusammenarbeiten zu können. Übergeben IDEs solch Runtime oder Kompiler als Kommandozeilenparameter dann wird dies erkannt und bewusst übersehen.
Die Projekt-Verzeichnis-"Philosophie" nach der XPSE arbeitet sieht z.B. vor das ein Projekt ein eigenes (Projekt)-Verzeichnis besitzt ( z.B. c:\dev\myProject\ ) und in diesem Projektverzeichnis liegen alle für das Projekt notwenige Dateien wie auch Kompiler, Linker, Runtime, ... .
Wenn Runtime/ Kompiler nicht abweichend im Quelltext angegeben sind dann werden die im Projektverzeichnis befindlichen Dateien genutzt. So kann man auch immer "sauber" für jedes Projekt eine Runtime/ Kompiler etc. aufbereiten und hat auch immer alles zusammen.
Einen kleinen Tick für {$CLEQ} gibt es jedoch indem man die Anweisung mit doppeltem Kommentarzeichen ( 2 x ' ) auskommentiert: KompilierenMarkierenSeparieren So wird {$cleq} angewiesen aber vom regulären XProfan-Kompiler übersehen. |
|
|
| |
|
|
|
Stephan Sonneborn | Hallo iF,
iF (14.04.12)
Die Meldungen beziehen sich auf die sog. "ENH"-Datei - diese Datei beinhaltet den Code der letztendlich an den XProfan-Kompiler übergeben wird.
OK. Die ENH-Datei kann ich mir anzeigen lassen? (Hab jetzt hier leider keinen XPSE und keine Programmierumgebung greifbar, um es zu testen).
iF (14.04.12)
Zeigt er Dir einen Funktionsnamen in dem der Fehler sein soll
Nein, leider nicht.
iF (14.04.12)
Falls Du mir das Projekt zukommen lassen könntest würde ich damit das Problem auch herausbekommen.
Geht leider nicht. Ist Firmen-Quellcode.
iF (14.04.12)
Die Projekt-Verzeichnis-"Philosophie" nach der XPSE arbeitet sieht z.B. vor das ein Projekt ein eigenes (Projekt)-Verzeichnis besitzt ( z.B. c:\dev\myProject\ ) und in diesem Projektverzeichnis liegen alle für das Projekt notwenige Dateien wie auch Kompiler, Linker, Runtime, ... .
Achso!
iF (14.04.12)
Einen kleinen Tick für {$CLEQ} gibt es jedoch indem man die Anweisung mit doppeltem Kommentarzeichen ( 2 x ' ) auskommentiert:''{$CLEQ}
|
|
|
| Schöne Grüße aus Wittgenstein von Stephan
Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz | 23.04.2012 ▲ |
|
|
|
|
| Stephan Sonneborn (23.04.12)
Hallo iF, iF (14.04.12)Die Meldungen beziehen sich auf die sog. "ENH"-Datei - diese Datei beinhaltet den Code der letztendlich an den XProfan-Kompiler übergeben wird. OK. Die ENH-Datei kann ich mir anzeigen lassen? (Hab jetzt hier leider keinen XPSE und keine Programmierumgebung greifbar, um es zu testen). Klar, die enh-Datei bleibt bestehen genau so wie auch z.B. die asm-Datei etc. - lediglich wenn der Schalter {$notmp} gesetzt ist dann werden diese "Temps" gelöscht.
Stephan Sonneborn (23.04.12)
iF (14.04.12) Falls Du mir das Projekt zukommen lassen könntest würde ich damit das Problem auch herausbekommen.
Geht leider nicht. Ist Firmen-Quellcode.
Verstehe. Ich specke den Code in solchen Fällen immer fix ab - also ganz grob so dass dieser Vorgang wirklich meist nicht mehr als 5 Minuten dauert. |
|
|
| |
|
|
|
E.T. | so mal nebenbei: bei solchen Problemen öffne ich immer die .enh (im Win-Text-Editor), suche die Zeile, welche XPSE nach Naehe: ausgibt. Wenn man sich so eine .enh x-mal näher angeschaut hat, findet man auch wirklich in der Nähe der angegebenen Zeile einen Fehler. Dann flux ins's Mapfile geschaut (Zeilen-Nummer steht in der .enh am Zeilenende in Klammern, zumindest wenn man {$MapFile} nutzt ), und schon kann ich den Fehler genau eingrenzen. ... aber das mal so nebenbei, hilft mir oft weiter
Geht leider nicht. Ist Firmen-Quellcode
Freut mich zu hören (lesen), das auch in Firmen mit XProfan geproggt wird. Aber der Quellcode sollte doch immer noch dein geistiges Eigentum sein. Also lass doch IF mal reinschauen (hab ich schon des öffteren gemacht), er wird, wenn du es wünschst, sicher nix verraten (schon allein deshalb, weil er sich eh nix merken kann ).
...hilft auch ungemein weiter, XPSE weiter voran zu treiben |
|
|
| Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 24.04.2012 ▲ |
|
|
|
|
Jörg Sellmeyer |
Aber der Quellcode sollte doch immer noch dein geistiges Eigentum sein.
Das stimmt sicher nicht. Alles was man im Auftrag einer Firma erstellt, ist Eigentum dieser Firma. Sonst wäre ja auch Industiespionage quasi überflüssig, da man ja nur mal den zuständigen Sachbearbeiter/Programmierer/Sonstwen auf die andere Seite ziehen muß. Kann man zwar jetzt auch machen aber die Weitergabe von Firmeninterna wird mit Strafen geahndet. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 24.04.2012 ▲ |
|
|
|