X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=include%2Flttng%2Fust-tracepoint-event.h;h=baf9879371898289ff5d9cef25763403f9448be1;hb=1c1968450409b3c159a3000f9e1a968ff1e5f7e8;hp=1edb50c13d295cac4d0f973223dc1c3453ee285e;hpb=05bfa3dc3a6e6b2ece3686a5f384b6645c2a5010;p=lttng-ust.git diff --git a/include/lttng/ust-tracepoint-event.h b/include/lttng/ust-tracepoint-event.h index 1edb50c1..baf98793 100644 --- a/include/lttng/ust-tracepoint-event.h +++ b/include/lttng/ust-tracepoint-event.h @@ -1,8 +1,6 @@ -/* - * SPDX-License-Identifier: MIT - * - * Copyright (C) 2011-2012 Mathieu Desnoyers - */ +// SPDX-FileCopyrightText: 2011-2012 Mathieu Desnoyers +// +// SPDX-License-Identifier: MIT #include #include @@ -257,9 +255,16 @@ void lttng_ust__event_template_proto___##_provider##___##_name(LTTNG_UST__TP_ARG }; #include LTTNG_UST_TRACEPOINT_INCLUDE +#if defined(__cplusplus) + /* * Stage 0.9.1 - * Verifying array and sequence elements are of an integer type. + * Verifying array and sequence elements are of an integer or pointer + * type. + * + * This compile-time check is only enabled in C++, because the C + * implementation of lttng_ust_is_pointer_type does not support opaque + * pointer types. */ /* Reset all macros within LTTNG_UST_TRACEPOINT_EVENT */ @@ -288,6 +293,8 @@ void lttng_ust__event_template_proto___##_provider##___##_name(LTTNG_UST__TP_ARG #include LTTNG_UST_TRACEPOINT_INCLUDE +#endif + /* * Stage 0.9.2 of tracepoint event generation. * @@ -844,7 +851,7 @@ size_t lttng_ust__event_get_align__##_provider##___##_name(LTTNG_UST__TP_ARGS_PR if (lttng_ust_string_encoding_##_encoding == lttng_ust_string_encoding_none) \ __chan->ops->event_write(&__ctx, _src, sizeof(_type) * (_length), lttng_ust_rb_alignof(_type)); \ else \ - __chan->ops->event_pstrcpy_pad(&__ctx, (const char *) (_src), _length); \ + __chan->ops->event_pstrcpy_pad(&__ctx, (const char *) (_src), _length); #undef lttng_ust__field_sequence_encoded #define lttng_ust__field_sequence_encoded(_type, _item, _src, _byte_order, _length_type, \ @@ -1136,7 +1143,7 @@ static const struct lttng_ust_event_desc lttng_ust__event_desc___##_provider##_# #define LTTNG_UST__TRACEPOINT_EVENT_INSTANCE(_template_provider, _template_name, _provider, _name, _args) \ <tng_ust__event_desc___##_provider##_##_name, -static const struct lttng_ust_event_desc * const LTTNG_UST__TP_COMBINE_TOKENS(lttng_ust__event_desc___, LTTNG_UST_TRACEPOINT_PROVIDER)[] = { +static const struct lttng_ust_event_desc * const LTTNG_UST__TP_COMBINE_TOKENS(lttng_ust__provider_event_desc___, LTTNG_UST_TRACEPOINT_PROVIDER)[] = { #include LTTNG_UST_TRACEPOINT_INCLUDE NULL, /* Dummy, C99 forbids 0-len array. */ }; @@ -1151,8 +1158,8 @@ static const struct lttng_ust_event_desc * const LTTNG_UST__TP_COMBINE_TOKENS(lt const struct lttng_ust_probe_desc LTTNG_UST__TP_COMBINE_TOKENS(lttng_ust__probe_desc___, LTTNG_UST_TRACEPOINT_PROVIDER) = { .struct_size = sizeof(struct lttng_ust_probe_desc), .provider_name = lttng_ust__tp_stringify(LTTNG_UST_TRACEPOINT_PROVIDER), - .event_desc = LTTNG_UST__TP_COMBINE_TOKENS(lttng_ust__event_desc___, LTTNG_UST_TRACEPOINT_PROVIDER), - .nr_events = LTTNG_UST__TP_ARRAY_SIZE(LTTNG_UST__TP_COMBINE_TOKENS(lttng_ust__event_desc___, LTTNG_UST_TRACEPOINT_PROVIDER)) - 1, + .event_desc = LTTNG_UST__TP_COMBINE_TOKENS(lttng_ust__provider_event_desc___, LTTNG_UST_TRACEPOINT_PROVIDER), + .nr_events = LTTNG_UST__TP_ARRAY_SIZE(LTTNG_UST__TP_COMBINE_TOKENS(lttng_ust__provider_event_desc___, LTTNG_UST_TRACEPOINT_PROVIDER)) - 1, .major = LTTNG_UST_PROVIDER_MAJOR, .minor = LTTNG_UST_PROVIDER_MINOR, };