PCRE2: чтение значений структуры pcre2_real_code_n - PullRequest
1 голос
/ 08 октября 2019

Я полностью потерян в этой библиотеке, потому что это очень хардкорный C-код, полный макросов и таких вкусных вещей.

В моем коде я генерирую скомпилированное регулярное выражение JIT, как обычно ... .

rc = pcre2_jit_compile(rex.code, PCRE2_JIT_COMPLETE);

Ничего особенного, rex.code - это типизированная переменная pcre2_code*. Из источника и из Интернета я мог бы выкопать, что под капотом это, возможно, структура: pcre2_real_code_8. После создания я хотел бы проверить одного из членов этой структуры, но компилятор говорит, что я не могу:

error C2027: use of undefined type 'pcre2_real_code_8'

Как это возможно, что я могу создать указатель на эту структуру, но структурана самом деле не определено - так что я не могу получить доступ к его элементам?

Есть ли какой-нибудь способ на самом деле получить доступ к внутренним объектам не-неопределенным образом поведения?

Даже если это не предназначено длябыть измененным, я хотел бы только ПРОЧИТАТЬ одного из участников, потому что я должен отслеживать некоторые вещи, которые должны быть вне области видимости


Ps .: Я не думаю, что это должно влиятьвопрос, но среда такова:

  • MSVC 2019 с собственным компилятором
  • В моем приложении, с которым я связываю PCRE2, есть приложение C ++
  • Использование однобайтового (8-битного) размера блока
  • Я использую PCRE2 в качестве статической библиотеки и просто включаю "pcre2.h" в другой проект.
  • Я построилэтот проект - должен совпадать с официальным
  • AsВы догадались, что я использую Windows
...