Submit and vote on feature ideas.

Welcome to the new Parasoft forums! We hope you will enjoy the site and try out some of the new features, like sharing an idea you may have for one of our products or following a category.

Parasoft C/C++ Test error: expected an identifier extern "C" {

Options
JesseZ
JesseZ Posts: 5
edited August 2022 in C/C++test

When I tried to run unit test for a simple main program in C++:

#include <iostream>

int main()
{
  std::cout << "hello world" << std::endl;

  return 0;
}

it occurred the following problem:

C++test analysis errors in /Demo_aCpp
    1. Test execution: error preparing instrumentation / symbols data for file.
"/usr/include/sys/features.h", line 25: error: expected an identifier
  extern "C" {
         ^

"/usr/include/sys/features.h", line 25: error: expected a ";"
  extern "C" {
             ^

"/usr/include/sys/reent.h", line 9: error: expected an identifier
  extern "C" {
         ^

"/usr/include/sys/reent.h", line 9: error: expected a ";"
  extern "C" {
             ^
...
Error limit reached.
100 errors detected in the compilation of "C:\Users\username\AppData\Local\Temp\ParaSoft.1840.28297.c".
Compilation terminated.

Any hint on this? Thanks in advance

Tagged:

Comments

  • JesseZ
    JesseZ Posts: 5
    Options

    The origin source file is ending in .cpp, but the temp file that autogenerated by the Parasoft C/C++ Test is ending in .c. So the actually compiled file was the temp file, and the compiler is C-compiler, C-compiler cannot understand extern "C", then the error occurred. Is this right?

  • JesseZ
    JesseZ Posts: 5
    Options

    The initial problem is this :

    C++test analysis errors in /BugDetectiveCpp
        1. Test execution: error preparing instrumentation / symbols data for file.
    In file included from D:\Applications\Cygwin32\home\Parasoft\9.4\engine\etc\safestubs\safe_stubs_win32.c:7:0:
    /home/Parasoft/9.4/engine/runtime/include/cpptest.h:16:12: fatal error: exception: No such file or directory
     #  include <exception>
                ^~~~~~~~~~~
    compilation terminated.
    Error preprocessing file "D:\Applications\Cygwin32\home\Parasoft\9.4\engine\etc\safestubs\safe_stubs_win32.c": 
    Process exited with code: 1
    

    I fixed this by including absolute path.

Tagged