-Idirectory
may be used in conjunction with -P to tell the C preprocessor
where to look for include files. By default /usr/include and
/usr/lib/perl are searched.
-P causes your script to be run through the C preprocessor before
compilation by perl. (Since both comments and cpp directives
begin with the # character, you should avoid starting comments
with any words recognized by the C preprocessor such as "if",
"else" or "define".)
####
#define ADD(x,y) x + y
my $r = ADD( getPfromSomewhere(), getQfromSomewhere() );
...
my $s = ADD( geta(), getb() );
####
# 1 "macro.pl"
# 1 ""
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 30 "/usr/include/stdc-predef.h" 3 4
# 1 "/usr/include/x86_64-linux-gnu/bits/predefs.h" 1 3 4
# 31 "/usr/include/stdc-predef.h" 2 3 4
# 1 "" 2
# 1 "macro.pl"
my $r = getPfromSomewhere() + getQfromSomewhere();
...
my $s = geta() + getb();