type Void is not supported

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Mon Jul 22 11:57:05 UTC 2024


I think this is should be relatively easy to do. We allow many info to 
be attached to out own AST declarations. For instance, we capture the 
source-like declaration of a struct in an "annotation" which is then 
attached to the AST node used to model that struct.

On top of this, all declaration AST nodes already have position info. 
For instance, if I extract this:

//foo.h
typedef void T;

I see that this position is attached to the typedef:

./foo.h:1:14

So, the info is there, but UnsupportedFilter (and possibly other tree 
visitors) do not use that when reporting warnings.

As long as there's always some declaration to look at, it should always 
be possible to print positional information in the generated messages?

Maurizio


On 22/07/2024 06:02, Sundararajan Athijegannathan wrote:
> Source info (line number etc) are not retained in jextract's 
> representation of clang CXCursor and CXType objects. As of now, it is 
> not possible to print source locations post parsing. While parsing 
> clang diagnostics, if any, are printed with source info.


More information about the jextract-dev mailing list