Syntax rules for Lazarus Pascal procedural "Units" -
i organise app's source code pascal compilation units using file -> new unit
the following unit compiles ok ...
unit cryptounit; {$mode objfpc}{$h+} interface function encrypt(key, plaintext:string):string; function decrypt(key, ciphertext:string):string; implementation uses classes, sysutils, blowfish; function encrypt(key, plaintext:string):string; ... however 1 has compilation errors can't identify "exception" @ line 6 ...
unit exceptionunit; {$mode objfpc}{$h+} interface procedure dumpexceptioncallstack(e: exception); // <--- problem implementation uses classes, sysutils, fileutil; { see http://wiki.freepascal.org/logging_exceptions } procedure dumpexceptioncallstack(e: exception); ... if assume exception defined in sysutils (how can tell?) can't put uses sysutils before interface (the compiler complains expecting interface)
how tell compiler exception defined in sysutils?
other units used used unit referenced after interface keyword, before other statements in interface section.
your example should work in following form:
unit exceptionunit; {$mode objfpc}{$h+} interface uses classes, sysutils, fileutil; procedure dumpexceptioncallstack(e: exception); implementation { see http://wiki.freepascal.org/logging_exceptions } procedure dumpexceptioncallstack(e: exception);
Comments
Post a Comment