Fix -Wmaybe-uninitialized

../namespace.c: In function ‘current_namespace’:
../namespace.c:221:48: warning: ‘proc_ns’ may be used uninitialized [-Wmaybe-uninitialized]
  221 |                     if (permit_calling_builtin || (proc_ns && NAMESPACE_USER_P(proc_ns)))
      |                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../namespace.c:204:31: note: ‘proc_ns’ was declared here
  204 |         const rb_namespace_t *proc_ns;
      |                               ^~~~~~~

In function ‘copy_ext_file’,
    inlined from ‘rb_namespace_local_extension’ at ../namespace.c:855:18:
../namespace.c:768:21: warning: ‘written’ may be used uninitialized [-Wmaybe-uninitialized]
  768 |             wrote = fwrite(buffer+written, 1, read-written, dst);
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../namespace.c: In function ‘rb_namespace_local_extension’:
../namespace.c:748:25: note: ‘written’ was declared here
  748 |     size_t read, wrote, written;
      |                         ^~~~~~~

In function ‘copy_ext_file’,
    inlined from ‘rb_namespace_local_extension’ at ../namespace.c:855:18:
../namespace.c:768:21: warning: ‘read’ may be used uninitialized [-Wmaybe-uninitialized]
  768 |             wrote = fwrite(buffer+written, 1, read-written, dst);
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../namespace.c: In function ‘rb_namespace_local_extension’:
../namespace.c:748:12: note: ‘read’ was declared here
  748 |     size_t read, wrote, written;
      |            ^~~~
This commit is contained in:
Takashi Kokubun 2025-05-11 13:37:47 -07:00
parent 8b7a4d167a
commit dc5555d74a

View File

@ -201,7 +201,7 @@ current_namespace(bool permit_calling_builtin)
// calling = 0;
}
while (calling) {
const rb_namespace_t *proc_ns;
const rb_namespace_t *proc_ns = NULL;
VALUE bh;
if (VM_FRAME_NS_SWITCH_P(cfp)) {
bh = rb_vm_frame_block_handler(cfp);
@ -745,7 +745,7 @@ copy_ext_file(char *src_path, char *dst_path)
#else
FILE *src, *dst;
char buffer[1024];
size_t read, wrote, written;
size_t read = 0, wrote, written = 0;
size_t maxread = sizeof(buffer);
int eof = 0;
int clean_read = 1;