mirror of
https://github.com/trapexit/mergerfs.git
synced 2026-10-20 16:29:32 +00:00
Convert all C source files in vendored/libfuse/ to C++17: - lib/crc32b.c -> crc32b.cpp (const void* cast) - lib/fuse_opt.c -> fuse_opt.cpp (designated init, void* arithmetic) - lib/fuse_signals.c -> fuse_signals.cpp - lib/helper.c -> helper.cpp (void* data cast) - lib/mount.c -> mount.cpp (thin wrapper) - lib/mount_generic.c -> mount_generic.h (static inline, #pragma once) - lib/mount_bsd.c -> mount_bsd.h (static inline, #pragma once) - lib/mount_util.c -> mount_util.h (static inline, #pragma once) - util/fusermount.c -> fusermount.cpp - util/mount.mergerfs.c -> mount.mergerfs.cpp Key changes: - Replace C99 designated initializer in fuse_opt_parse with field-by-field init - Fix void* pointer arithmetic via char* base + offset pattern - All C-style (T*)voidptr casts replaced with static_cast/reinterpret_cast - Remove redundant #define _GNU_SOURCE (already in FUSE_FLAGS) - Wrap __clone2 declaration in extern "C" for ia64 path - Update Makefile: empty SRC_C, build utils with $(CXX) instead of $(CC) - Remove stale .c files now replaced by .cpp/.h counterparts All binaries build cleanly: mergerfs, mergerfs-fusermount, mount.mergerfs
20 lines
825 B
C++
20 lines
825 B
C++
/*
|
|
ISC License
|
|
|
|
Copyright (c) 2019, Antonio SJ Musumeci <trapexit@spawn.link>
|
|
|
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
purpose with or without fee is hereby granted, provided that the above
|
|
copyright notice and this permission notice appear in all copies.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
*/
|
|
|
|
#include "mount.hpp"
|