+2021-08-07 Bruno Haible <bruno@clisp.org>
+
+ clean-temp: Improve GCC 11 allocation-deallocation checking.
+ * lib/clean-temp.h (cleanup_temp_dir): Move declaration up.
+ (create_temp_dir): Declare that deallocation must happen through
+ 'cleanup_temp_dir'.
+
2021-08-07 Bruno Haible <bruno@clisp.org>
canon-host: Improve GCC 11 allocation-deallocation checking.
/* More fields are present here, but not public. */
};
+/* Remove all registered files and subdirectories inside DIR and DIR itself.
+ DIR cannot be used any more after this call.
+ Return 0 upon success, or -1 if there was some problem. */
+extern int cleanup_temp_dir (struct temp_dir *dir);
+
/* Create a temporary directory.
PREFIX is used as a prefix for the name of the temporary directory. It
should be short and still give an indication about the program.
is shown and NULL is returned. */
extern struct temp_dir * create_temp_dir (const char *prefix,
const char *parentdir,
- bool cleanup_verbose);
+ bool cleanup_verbose)
+ _GL_ATTRIBUTE_DEALLOC (cleanup_temp_dir, 1);
/* Register the given ABSOLUTE_FILE_NAME as being a file inside DIR, that
needs to be removed before DIR can be removed.
Return 0 upon success, or -1 if there was some problem. */
extern int cleanup_temp_dir_contents (struct temp_dir *dir);
-/* Remove all registered files and subdirectories inside DIR and DIR itself.
- DIR cannot be used any more after this call.
- Return 0 upon success, or -1 if there was some problem. */
-extern int cleanup_temp_dir (struct temp_dir *dir);
-
/* ================== Opening and closing temporary files ================== */
/* Open a temporary file in a temporary directory.