microsoft / msquic

Cross-platform, C implementation of the IETF QUIC protocol, exposed to C, C++, C# and Rust.
MIT License
4.03k stars 530 forks source link

Cannot build MsQuic due to lttng compilation error #4365

Closed ManickaP closed 3 months ago

ManickaP commented 3 months ago

Describe the bug

Build of main MsQuic started recently failing for me with many errors like this:

In file included from /usr/include/lttng/tracepoint-event.h:69,
                 from /home/manicka/repositories/msquic/src/generated/linux/Tcp.cpp.clog.h:16,
                 from /home/manicka/repositories/msquic/src/generated/linux/quic.clog_Tcp.cpp.clog.h.c:7:
/home/manicka/repositories/msquic/src/generated/linux/Tcp.cpp.clog.h.lttng.h: In function ‘lttng_ust__event_probe__CLOG_TCP_CPP___PerfTcpCreateClient’:
/home/manicka/repositories/msquic/src/generated/linux/Tcp.cpp.clog.h.lttng.h:17:9: error: initialization of ‘uint64_t’ {aka ‘long unsigned int’} from ‘const void *’ makes integer from pointer without a cast [-Wint-conversion]
   17 |         ctf_integer_hex(uint64_t, arg2, arg2)
      |         ^~~~~~~~~~~~~~~

I'm building with lttng logging on -DQUIC_ENABLE_LOGGING=true,

Affected OS

Additional OS information

cmake version 3.29.5 clang version 17.0.6 lttng-ust 2.13.8

MsQuic version

main

Steps taken to reproduce bug

configuration=Release
options="-DQUIC_BUILD_TOOLS=off -DQUIC_BUILD_TEST=off -DQUIC_BUILD_PERF=off -DQUIC_ENABLE_LOGGING=true -DQUIC_USE_SYSTEM_LIBCRYPTO=true -DQUIC_TLS=openssl3"

cmake -B build -DCMAKE_BUILD_TYPE=${configuration} ${options}
cd build
cmake --build . --config ${configuration}

Expected behavior

It builds.

Actual outcome

In file included from /usr/include/lttng/tracepoint-event.h:69,
                 from /home/manicka/repositories/msquic/src/generated/linux/Tcp.cpp.clog.h:16,
                 from /home/manicka/repositories/msquic/src/generated/linux/quic.clog_Tcp.cpp.clog.h.c:7:
/home/manicka/repositories/msquic/src/generated/linux/Tcp.cpp.clog.h.lttng.h: In function ‘lttng_ust__event_probe__CLOG_TCP_CPP___PerfTcpCreateClient’:
/home/manicka/repositories/msquic/src/generated/linux/Tcp.cpp.clog.h.lttng.h:17:9: error: initialization of ‘uint64_t’ {aka ‘long unsigned int’} from ‘const void *’ makes integer from pointer without a cast [-Wint-conversion]
   17 |         ctf_integer_hex(uint64_t, arg2, arg2)
      |         ^~~~~~~~~~~~~~~

Additional details

No response