'Clair does not parse header files correctly for pointers in arguments

I am parsing a header file using Rascal ClaiR:

iFile = toLocation("file://D:/test.h");
ast = parseCpp(iFile);
iprint(ast);

The header file test.h looks as follows:

#ifndef TEST_H
#define TEST_H

/* Generic function */
result_t API get_data(query_h query, char **string, result_t *res);
result_t API   set_data(node_h node,   const char *string);
result_t API update_data(node_h node, char ***names, uint32_t *count);

#endif

As an outcome I get multiple errors like this:

  • decl=|cpp+parameter:///update_data(org.eclipse.cdt.internal.core.dom.parser.ProblemType@53e470da,char...,%3F.)/count|),

Is this a bug in ClaiR?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source