On Mon, Mar 2, 2026 at 9:17 PM Timofei Zhakov <[email protected]> wrote:
>
> I'm pretty sure that it's a new feature in the compiler that detects if the 
> result of a function returning a pointer to a string was saved into 
> non-constant pointer from const pointer. This seems reasonable and it seems 
> like consts were misused in those places.
>
> [[[
> [39/469] Building C object 
> CMakeFiles/libsvn_subr.dir/subversion/libsvn_subr/gpg_agent.c.o
> /home/tima/dev/svn-trunk/subversion/libsvn_subr/gpg_agent.c: In function 
> ‘find_running_gpg_agent’:
> /home/tima/dev/svn-trunk/subversion/libsvn_subr/gpg_agent.c:391:6: warning: 
> assignment discards ‘const’ qualifier from pointer target type 
> [-Wdiscarded-qualifiers]
>   391 |   ep = strchr(p, '\n');
>       |      ^
> [85/469] Building C object 
> CMakeFiles/libsvn_subr.dir/subversion/libsvn_subr/subst.c.o
> /home/tima/dev/svn-trunk/subversion/libsvn_subr/subst.c: In function 
> ‘build_keywords’:
> /home/tima/dev/svn-trunk/subversion/libsvn_subr/subst.c:309:15: warning: 
> assignment discards ‘const’ qualifier from pointer target type 
> [-Wdiscarded-qualifiers]
>   309 |           sep = strchr(keyword, '=');
>       |               ^
> [93/469] Building C object 
> CMakeFiles/libsvn_subr.dir/subversion/libsvn_subr/version.c.o
> /home/tima/dev/svn-trunk/subversion/libsvn_subr/version.c: In function 
> ‘svn_version__parse_version_string’:
> /home/tima/dev/svn-trunk/subversion/libsvn_subr/version.c:257:22: warning: 
> initialization discards ‘const’ qualifier from pointer target type 
> [-Wdiscarded-qualifiers]
>   257 |       char *hyphen = strchr(piece, '-');
>       |                      ^~~~~~
> [144/469] Building C object 
> CMakeFiles/libsvn_fs_fs.dir/subversion/libsvn_fs_fs/tree.c.o
> /home/tima/dev/svn-trunk/subversion/libsvn_fs_fs/tree.c: In function 
> ‘check_newline’:
> /home/tima/dev/svn-trunk/subversion/libsvn_fs_fs/tree.c:2488:13: warning: 
> initialization discards ‘const’ qualifier from pointer target type 
> [-Wdiscarded-qualifiers]
>  2488 |   char *c = strchr(path, '\n');
>       |             ^~~~~~
> [190/469] Building C object 
> CMakeFiles/libsvn_fs.dir/subversion/libsvn_fs/fs-loader.c.o
> /home/tima/dev/svn-trunk/subversion/libsvn_fs/fs-loader.c: In function 
> ‘svn_fs__path_valid’:
> /home/tima/dev/svn-trunk/subversion/libsvn_fs/fs-loader.c:493:5: warning: 
> assignment discards ‘const’ qualifier from pointer target type 
> [-Wdiscarded-qualifiers]
>   493 |   c = strchr(path, '\n');
>       |     ^
> [226/469] Building C object 
> CMakeFiles/libsvn_diff.dir/subversion/libsvn_diff/parse-diff.c.o
> /home/tima/dev/svn-trunk/subversion/libsvn_diff/parse-diff.c: In function 
> ‘git_start’:
> /home/tima/dev/svn-trunk/subversion/libsvn_diff/parse-diff.c:1582:19: 
> warning: assignment discards ‘const’ qualifier from pointer target type 
> [-Wdiscarded-qualifiers]
>  1582 |   new_path_marker = strstr(old_path_marker, " b/");
>       |                   ^
> /home/tima/dev/svn-trunk/subversion/libsvn_diff/parse-diff.c:1610:23: 
> warning: assignment discards ‘const’ qualifier from pointer target type 
> [-Wdiscarded-qualifiers]
>  1610 |       new_path_marker = strstr(new_path_start, " b/");
>       |                       ^
> ]]]
>
> I prepared a patch that fixes them by adding const where needed. Can anyone 
> correct me if I'm misunderstanding something?

Committed the patch as r1932158, r1932159, and r1932160. Plus change in
svn_cstring_split in r1932154.

Thanks everyone!

-- 
Timofei Zhakov

Reply via email to