----- Original Message -----
From: "Xiao Yafeng" <xyf.x...@gmail.com>
To: "inline" <inline@perl.org>; "David Oswald" <daosw...@gmail.com>
Sent: Sunday, July 22, 2012 9:28 PM
Subject: does Inline::CPP recognize #import ?
I have to use #import to import typed library , but seems Inline::CPP
doesn't know this and complain many errors:
use Inline CPP=>Config=>
CC => 'cl.exe',
BUILD_NOISY => 1;
If you want to use cl.exe as a C++ compiler, you'll need to do
CC => 'cl /TP',
otherwise the source files will be treated as C files.
Was Inline::CPP originally installed using a different "CC" ?
If so, then it might cause problems if you decide to switch to cl.exe. (Or
it may not ... I don't know.)
If I wanted to switch to another compiler then, instead of using the 'CC'
config option, I would re-build and re-install Inline::CPP using that other
compiler. (But make sure you specify 'cl /TP' as the compiler.)
If you're using ActivePerl, you might just get away with that ... but if
you're running Strawberry Perl, then switching to a Microsoft compiler might
cause problems.
test_cpp_pl_57db.c
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(39) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(39) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(41) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(42) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(43) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(44) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error
C2143
: syntax error : missing '{' before ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error
C2059
: syntax error : ':'
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\cstdio(45) : error
C2143
: syntax error : missing '{' before ':'
Note that this is Visual Studio complaining about its own cstdio file -
which also probably indicates that this C++ file (cstdio) is being parsed as
a C file.
Cheers,
Rob