Comments (6)
Here is a result of an analysis
https://transfer.sh/Jaqfy/test.h.xml
va_list is seen as a Typedef to "__va_list_tag".
from castxml.
We had a problem when we moved to castxml: there were a lot of "__va_list_tag" declarations "polluting" the declaration tree. As I was in a hurry to get the "standard" parsing up and running (with pyplusplus), I just disabled that declaration.
Could you please try by passing the f1 flag like explained here:
https://github.com/gccxml/pygccxml/blob/715361fed6ca7440c2ccbac9e77ac6407769c21a/CHANGELOG.md#version-171
It will also enable more internal stuff: https://github.com/gccxml/pygccxml/blob/25bf2b2035dba7c6b75f2a6483f542be468e2956/pygccxml/parser/scanner.py#L210-L218
I never thought it may be a problem, maybe I need to define a better way to handle that case. I never wrote a detailed help/documentation section about that because I never thought it would be a problem one day.
Hope that helps.
from castxml.
If I enabled it via :
xml_generator_config = parser.xml_generator_configuration_t(
xml_generator_path=generator_path,
xml_generator=generator_name,
flags= ["f1"])
which is converted by pygccxml into a __va_list_tag *
argument (and then generates error: β__va_list_tagβ has not been declared
so I guess pygccxml ought to print it as "va_list").
For now, if the argument starts with "?unknown?", I convert it to va_list and it seems to work but that's a workaround I guess
from castxml.
@iMichka is this a CastXML issue or a pygccxml issue?
from castxml.
@bradking I had no time to look at this. I'm on holidays, and will come back in 2 weeks, so I will only have internet from time to time. The unknown
comes from pygccxml, so it is probably a pygcxml problem. https://github.com/gccxml/pygccxml/blob/10829aa6bf6d06df6d6a6cf34af5544e31ddcfa2/pygccxml/declarations/cpptypes.py#L122
This issue would be better moved to the pygccxml issue tracker. I will re-open a new issue here if the problem is coming from castxml.
from castxml.
Closing for now as this appears to be a pygccxml issue and not a CastXML one.
from castxml.
Related Issues (20)
- llvm/clang 14 reports using clauses separately HOT 8
- Trying to run CastXML on C++ project HOT 2
- arm64v8 rounding intrinsics not activated under --castxml-cc-gnu g++ HOT 1
- Help: Can I get access to default member initializer? HOT 5
- Wrapping ITK modules for ARM architecture fails at CastXML step HOT 3
- 0.5 release series for post-0.4 features HOT 7
- CastXML 0.5.0 tests fail on 32-bit architectures HOT 4
- Tests are failing with LLVM/CLANG-15 HOT 1
- CastXML tests fail with LLVM/Clang 16
- Skipping methods containing rvalue reference parameters HOT 2
- Generating unnecessary syntax HOT 1
- 0.6.0: Many tests fail HOT 2
- Different behaviour on linux and windows HOT 3
- gcc-13.2.0 unknown type name '_Float32' HOT 9
- Building against LLVM/Clang 18.x fails using MSVC
- arm64 ubuntu make failed. cannot find -ltinfo: No such file or directory HOT 2
- GCC 13 vector header include
- mangled key in GCC/MSVC style HOT 6
- Definition for __float80 with GCC, C++20, amd64 HOT 1
- Use GCC for internal compilation (strange compilation errors?) HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from castxml.