Hint Directives

From Free Pascal wiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

English (en) suomi (fi) français (fr)

Using Hint Directives

Whenever an identifier marked with a hint directive is later encountered by the compiler, then a warning will be displayed, corresponding to the specified hint.

  • deprecated
    • The use of this identifier is deprecated, use an alternative instead. The deprecated keyword can be followed by a string constant with a message. The compiler will show this message whenever the identifier is encountered.
  • experimental
    • The use of this identifier is experimental: this can be used to flag new features that should be used with caution.
  • platform
    • This is a platform-dependent identifier: it may not be defined on all platforms.
  • unimplemented
    • This should be used on functions and procedures only. It should be used to signal that a particular feature has not yet been implemented.

The following are examples:

Const
  AConst = 12 deprecated;

var
  p : integer platform;

Function Something : Integer; experimental;

begin
  Something:=P+AConst;
end;

begin
  Something;
end.

This would result in the following output:

testhd.pp(11,15) Warning: Symbol "p" is not portable
testhd.pp(11,22) Warning: Symbol "AConst" is deprecated
testhd.pp(15,3) Warning: Symbol "Something" is experimental

Hint directives can follow all kinds of identifiers: units, constants, types, variables, functions, procedures and methods.