Re: [FFmpeg-devel] [PATCH 3/4] avfilter/vf_ccrepack: Constify filter

2023-07-01 Thread Rémi Denis-Courmont


Le 29 juin 2023 22:42:17 GMT+03:00, Paul B Mahol  a écrit :
>On Thu, Jun 29, 2023 at 9:35 PM Andreas Rheinhardt <
>andreas.rheinha...@outlook.com> wrote:
>
>> Paul B Mahol:
>> > On Thu, Jun 29, 2023 at 8:18 PM Andreas Rheinhardt <
>> > andreas.rheinha...@outlook.com> wrote:
>> >
>> >> The discrepancy between the definition and the declaration
>> >> in allfilters.c is actually UB.
>> >>
>> >
>> > I get no such message with ubsan.
>> >
>>
>> UBSan is a runtime UB-detector, not a compile-time UB detector.
>> The earlier code is UB because of 6.2.7 (2) of C11: "All declarations
>> that refer to the same object or function shall have compatible type;
>> otherwise, the behavior is undefined." A type and its const-qualified
>> type are not compatible.
>>
>
>This is so minor, that it is fully irrelevant.

UB is one of the most severe type of bug that can happen in C. How exactly is 
that "fully irrelevant"?

Nobody is ordering you to fix this bug if you don't want to. That's not a 
reason to block an objective simple well-understood and well-informed bug fix 
that somebody else made.

>
>
>>
>> - Andreas
>>
>>
>___
>ffmpeg-devel mailing list
>ffmpeg-devel@ffmpeg.org
>https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>To unsubscribe, visit link above, or email
>ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 3/4] avfilter/vf_ccrepack: Constify filter

2023-06-29 Thread Andreas Rheinhardt
Paul B Mahol:
> On Thu, Jun 29, 2023 at 9:35 PM Andreas Rheinhardt <
> andreas.rheinha...@outlook.com> wrote:
> 
>> Paul B Mahol:
>>> On Thu, Jun 29, 2023 at 8:18 PM Andreas Rheinhardt <
>>> andreas.rheinha...@outlook.com> wrote:
>>>
 The discrepancy between the definition and the declaration
 in allfilters.c is actually UB.

>>>
>>> I get no such message with ubsan.
>>>
>>
>> UBSan is a runtime UB-detector, not a compile-time UB detector.
>> The earlier code is UB because of 6.2.7 (2) of C11: "All declarations
>> that refer to the same object or function shall have compatible type;
>> otherwise, the behavior is undefined." A type and its const-qualified
>> type are not compatible.
>>
> 
> This is so minor, that it is fully irrelevant.
> 

The actual advantage of these patches is that the objects can be put
into read-only memory (.data.rel.ro in elf).

- Andreas

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 3/4] avfilter/vf_ccrepack: Constify filter

2023-06-29 Thread James Almer

On 6/29/2023 4:42 PM, Paul B Mahol wrote:

On Thu, Jun 29, 2023 at 9:35 PM Andreas Rheinhardt <
andreas.rheinha...@outlook.com> wrote:


Paul B Mahol:

On Thu, Jun 29, 2023 at 8:18 PM Andreas Rheinhardt <
andreas.rheinha...@outlook.com> wrote:


The discrepancy between the definition and the declaration
in allfilters.c is actually UB.



I get no such message with ubsan.



UBSan is a runtime UB-detector, not a compile-time UB detector.
The earlier code is UB because of 6.2.7 (2) of C11: "All declarations
that refer to the same object or function shall have compatible type;
otherwise, the behavior is undefined." A type and its const-qualified
type are not compatible.



This is so minor, that it is fully irrelevant.


Msvc was pedantic enough to complain about a double colon, so who knows 
if some compiler would do the same for this.
If the spec states both must match, then adding a "const" is hardly a 
problem.

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 3/4] avfilter/vf_ccrepack: Constify filter

2023-06-29 Thread Paul B Mahol
On Thu, Jun 29, 2023 at 9:35 PM Andreas Rheinhardt <
andreas.rheinha...@outlook.com> wrote:

> Paul B Mahol:
> > On Thu, Jun 29, 2023 at 8:18 PM Andreas Rheinhardt <
> > andreas.rheinha...@outlook.com> wrote:
> >
> >> The discrepancy between the definition and the declaration
> >> in allfilters.c is actually UB.
> >>
> >
> > I get no such message with ubsan.
> >
>
> UBSan is a runtime UB-detector, not a compile-time UB detector.
> The earlier code is UB because of 6.2.7 (2) of C11: "All declarations
> that refer to the same object or function shall have compatible type;
> otherwise, the behavior is undefined." A type and its const-qualified
> type are not compatible.
>

This is so minor, that it is fully irrelevant.


>
> - Andreas
>
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 3/4] avfilter/vf_ccrepack: Constify filter

2023-06-29 Thread Andreas Rheinhardt
Paul B Mahol:
> On Thu, Jun 29, 2023 at 8:18 PM Andreas Rheinhardt <
> andreas.rheinha...@outlook.com> wrote:
> 
>> The discrepancy between the definition and the declaration
>> in allfilters.c is actually UB.
>>
> 
> I get no such message with ubsan.
> 

UBSan is a runtime UB-detector, not a compile-time UB detector.
The earlier code is UB because of 6.2.7 (2) of C11: "All declarations
that refer to the same object or function shall have compatible type;
otherwise, the behavior is undefined." A type and its const-qualified
type are not compatible.

- Andreas

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 3/4] avfilter/vf_ccrepack: Constify filter

2023-06-29 Thread Paul B Mahol
On Thu, Jun 29, 2023 at 8:18 PM Andreas Rheinhardt <
andreas.rheinha...@outlook.com> wrote:

> The discrepancy between the definition and the declaration
> in allfilters.c is actually UB.
>

I get no such message with ubsan.


>
> Signed-off-by: Andreas Rheinhardt 
> ---
>  libavfilter/vf_ccrepack.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavfilter/vf_ccrepack.c b/libavfilter/vf_ccrepack.c
> index 61eb2128ae..950bb7b528 100644
> --- a/libavfilter/vf_ccrepack.c
> +++ b/libavfilter/vf_ccrepack.c
> @@ -92,7 +92,7 @@ static const AVFilterPad avfilter_vf_ccrepack_outputs[]
> = {
>  },
>  };
>
> -AVFilter ff_vf_ccrepack = {
> +const AVFilter ff_vf_ccrepack = {
>  .name= "ccrepack",
>  .description = NULL_IF_CONFIG_SMALL("Repack CEA-708 closed caption
> metadata"),
>  .uninit  = uninit,
> --
> 2.34.1
>
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [PATCH 3/4] avfilter/vf_ccrepack: Constify filter

2023-06-29 Thread James Almer

On 6/29/2023 3:19 PM, Andreas Rheinhardt wrote:

The discrepancy between the definition and the declaration
in allfilters.c is actually UB.

Signed-off-by: Andreas Rheinhardt 
---
  libavfilter/vf_ccrepack.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavfilter/vf_ccrepack.c b/libavfilter/vf_ccrepack.c
index 61eb2128ae..950bb7b528 100644
--- a/libavfilter/vf_ccrepack.c
+++ b/libavfilter/vf_ccrepack.c
@@ -92,7 +92,7 @@ static const AVFilterPad avfilter_vf_ccrepack_outputs[] = {
  },
  };
  
-AVFilter ff_vf_ccrepack = {

+const AVFilter ff_vf_ccrepack = {
  .name= "ccrepack",
  .description = NULL_IF_CONFIG_SMALL("Repack CEA-708 closed caption 
metadata"),
  .uninit  = uninit,


LGTM
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".