Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Mar 2022 19:54:53 GMT
From:      Dimitry Andric <dim@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 7f2fdcb022ca - main - sysutils/dtc: fix clang 14 warning about use of bitwise logical operator
Message-ID:  <202203101954.22AJsrEA017954@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by dim (src committer):

URL: https://cgit.FreeBSD.org/ports/commit/?id=7f2fdcb022ca2f4ff3f34829a4539463bdfd390d

commit 7f2fdcb022ca2f4ff3f34829a4539463bdfd390d
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2022-02-13 14:01:05 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2022-03-10 19:53:43 +0000

    sysutils/dtc: fix clang 14 warning about use of bitwise logical operator
    
    During an exp-run for llvm 14 (see bug 261742), it turned out that
    sysutils/dtc fails to build with clang 14:
    
    libfdt/fdt_rw.c:438:6: error: use of bitwise '|' with boolean operands [-Werror,-Wbitwise-instead-of-logical]
            if (can_assume(LIBFDT_ORDER) |
                ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                         ||
    libfdt/libfdt_internal.h:171:29: note: expanded from macro 'can_assume'
                                    ^
    libfdt/fdt_rw.c:438:6: note: cast one or both operands to int to silence this warning
    libfdt/libfdt_internal.h:171:29: note: expanded from macro 'can_assume'
                                    ^
    
    This should have been a logical or instead. Upstream fixed this in:
    https://github.com/dgibson/dtc/commit/7be250b4d059771c47be00ec8d4df7f47e4ac77c
    
    PR:             261930
    Approved by:    maintainer timeout (2 weeks)
    MFH:            2022Q1
---
 sysutils/dtc/files/patch-libfdt_fdt__rw.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/sysutils/dtc/files/patch-libfdt_fdt__rw.c b/sysutils/dtc/files/patch-libfdt_fdt__rw.c
new file mode 100644
index 000000000000..2c0bc333f16f
--- /dev/null
+++ b/sysutils/dtc/files/patch-libfdt_fdt__rw.c
@@ -0,0 +1,11 @@
+--- libfdt/fdt_rw.c.orig	2020-03-04 06:14:58 UTC
++++ libfdt/fdt_rw.c
+@@ -435,7 +435,7 @@ int fdt_open_into(const void *fdt, void *buf, int bufs
+ 			return struct_size;
+ 	}
+ 
+-	if (can_assume(LIBFDT_ORDER) |
++	if (can_assume(LIBFDT_ORDER) ||
+ 	    !fdt_blocks_misordered_(fdt, mem_rsv_size, struct_size)) {
+ 		/* no further work necessary */
+ 		err = fdt_move(fdt, buf, bufsize);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202203101954.22AJsrEA017954>