chromium / subspace

A concept-centered standard library for C++20, enabling safer and more reliable products and a more modern feel for C++ code.; Also home of Subdoc the code-documentation generator.
https://suslib.cc
Apache License 2.0
88 stars 15 forks source link

Subdoc Bugs exposed by libjxl #370

Open danakj opened 1 year ago

danakj commented 1 year ago

JxlColorProfile

https://old.lucaversari.it/jpeg_xl_data/docs/JxlColorProfile.html

veluca93 commented 1 year ago
danakj commented 1 year ago

typedefs are completely ignored atm, that one is in the TODOs. (except what we fixed today for typedef struct {} S;

veluca93 commented 1 year ago

Running it on the full code, it seems that subdoc doesn't find a bunch of the hwy functions and namespaces.

danakj commented 1 year ago

Could you give a link to an example function?

veluca93 commented 1 year ago

Could you give a link to an example function?

https://github.com/libjxl/libjxl/blob/97e5ab0916af36ff4ea8c47a21a551281ee79949/lib/jxl/inverse_mtf-inl.h#L53

this one is found, but only in namespaces N_SSE4 and N_SSE2, while the compile flags should cause it to appear also in i.e. namespace N_AVX2.

danakj commented 1 year ago

One possible cause is it skips decls that it has visited based on location. However subspace uses .inc files 5 times out of one header, and each one is visited separately.

danakj commented 9 months ago

type aliases and macros now generate. macros only generate if the prefix matches a prefix from --include-macro-prefix