From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58699) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WN0O1-0000mP-RO for qemu-devel@nongnu.org; Mon, 10 Mar 2014 09:37:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WN0Nx-0007Zz-3z for qemu-devel@nongnu.org; Mon, 10 Mar 2014 09:36:57 -0400 Received: from mx1.redhat.com ([209.132.183.28]:42613) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WN0Nw-0007Zk-Rv for qemu-devel@nongnu.org; Mon, 10 Mar 2014 09:36:53 -0400 From: Markus Armbruster References: <87txb69rd9.fsf@blackfin.pond.sub.org> Date: Mon, 10 Mar 2014 14:36:47 +0100 In-Reply-To: (Peter Maydell's message of "Mon, 10 Mar 2014 12:27:35 +0000") Message-ID: <87eh2a89ao.fsf@blackfin.pond.sub.org> MIME-Version: 1.0 Content-Type: text/plain Subject: Re: [Qemu-devel] test-qapi-visit causes clang -fsanitize=undefined warning List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: QEMU Developers , Luiz Capitulino Peter Maydell writes: > On 10 March 2014 12:21, Markus Armbruster wrote: >> My local clang doesn't complain. May I have your clang version, exact >> invocation and output? > > clang version 3.3 (tags/RELEASE_33/final) > > mkdir build/clang > (cd build/clang && '../../configure' '--cc=clang' '--cxx=clang++' > '--enable-gtk' '--target-list=arm-softmmu' > '--extra-cflags=-fsanitize=undefined') > make -C build/clang -j4 > cd build/clang > tests/test-qmp-input-strict > > Output is: > > /visitor/input-strict/pass/struct: OK > /visitor/input-strict/pass/struct-nested: OK > /visitor/input-strict/pass/list: OK > /visitor/input-strict/pass/union: OK > /visitor/input-strict/pass/union-flat: OK > /visitor/input-strict/pass/union-anon: OK > /visitor/input-strict/fail/struct: OK > /visitor/input-strict/fail/struct-nested: OK > /visitor/input-strict/fail/list: OK > /visitor/input-strict/fail/union: OK > /visitor/input-strict/fail/union-flat: tests/test-qapi-visit.c:462:33: > runtime error: member access within null pointer of type 'UserDefA' > (aka 'struct UserDefA') > OK > /visitor/input-strict/fail/union-anon: OK Turns out my clang installation doesn't support -fsanitize=undefined: it lacks libclang_rt.san-x86_64.a. Test works fine without -fsanitize=undefined. I set a breakpoint on visit_type_UserDefA_fields, and there's no null pointer to be found. Looks like I have to upgrade clang before I can make progress.