[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: warnings compiling emacs28 with gcc 12.1
From: |
Eli Zaretskii |
Subject: |
Re: warnings compiling emacs28 with gcc 12.1 |
Date: |
Thu, 28 Jul 2022 20:38:23 +0300 |
> From: Óscar Fuentes <ofv@wanadoo.es>
> Date: Thu, 28 Jul 2022 19:12:00 +0200
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> >> and there's another one about free that looks a bit scary:
> >>
> >> alloc.c: In function ‘lisp_free’:
> >> alloc.c:1052:3: warning: pointer ‘block’ used after ‘free’
> >> [-Wuse-after-free]
> >> 1052 | mem_delete (mem_find (block));
> >> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >> alloc.c:1050:3: note: call to ‘free’ here
> >> 1050 | free (block);
> >> | ^~~~~~~~~~~~
> >
> > Another nonsense. Look in mem_find, and you will see that it uses its
> > argument as just a number, it never dereferences it.
>
> The warning is not about dereferencing the pointer.
What other problems could be caused by using it after freeing it?