From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) by sourceware.org (Postfix) with ESMTPS id 875093858C33 for ; Sun, 21 Jan 2024 11:41:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 875093858C33 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=livius.net Authentication-Results: sourceware.org; spf=none smtp.mailfrom=livius.net ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 875093858C33 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::52b ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705837289; cv=none; b=SY+uaelxu0D8WT6tu7mroF4kikTdJ+ucG4YlrtoeV3hr0prRzgKEFkoXgvKvkjqCwTVwUyU2HgJny9VOh0H5zYVZKyqwfGsIX6uBt7nDEVzuu15KF63cS9qfuPQWZv2PboVyG70pVS8LFB8H2jf42t2ZBJjfekgsgckrWmbq0+U= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705837289; c=relaxed/simple; bh=Bshx+WN4E83OuRZyS+V5nBNf3Uu10VeHx6D5tZEvXM8=; h=DKIM-Signature:From:Mime-Version:Subject:Date:To:Message-Id; b=i9YAg6rAr02cjqaIvYix1X2UYwZutI0yqkk0kaA8WNcLUBl/xPGdj/WQys8izHpCnzrV2R8I7dD+wYHxghzBN0CcDjS5QCiulJeySh1WutlM77jTYG5Wren27NLppOM+EaKGh0Z50nT6tCzidc+tbDSaTSagmerjyoTKVPctUlk= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-ed1-x52b.google.com with SMTP id 4fb4d7f45d1cf-55a86795a3bso1382754a12.1 for ; Sun, 21 Jan 2024 03:41:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=livius-net.20230601.gappssmtp.com; s=20230601; t=1705837285; x=1706442085; darn=sourceware.org; h=message-id:in-reply-to:to:references:date:subject:mime-version :content-transfer-encoding:from:from:to:cc:subject:date:message-id :reply-to; bh=Bshx+WN4E83OuRZyS+V5nBNf3Uu10VeHx6D5tZEvXM8=; b=TahV2smTCo9+CuwpfrfsWu+MdBDroPzBHYtgy1IVQ9cYEVMyl6z5H9Rl0NuQvR/kyO Vhot8WkrpKEtWfU1PYhPanPMKjI+USwrQHs2AZM/nxSJwIDUbxeq4+OAPvm/rU5KcCqY 6rXOGUEZ/CWNF+tZqyU103f3dIGLKsER1NeAWEUUWQr2gKwqU//jMjzPsgyt8bjjqckr 6zmzJQZGaMWzzdM+hU1RWv+ApbuqeuDCfFgj3yu0HvpnAeSTESPxwdERDkmNRfYr0zy5 7DcWry9wdRvo4eKPnpLHaX+FswbQ/zVXc18BRi5BguHUiHDrqBfhWPNEKwHAGs8ujL13 2kBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705837285; x=1706442085; h=message-id:in-reply-to:to:references:date:subject:mime-version :content-transfer-encoding:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Bshx+WN4E83OuRZyS+V5nBNf3Uu10VeHx6D5tZEvXM8=; b=sJEqOwcHFDjc5LWdTHyzCuRjQc4kVlmgypZ+1cLF8WSy8qZfP77ZFk2noMOc6lZwVP ZbDGEs4tb9dXnSgZQ5714a8XTEHyAZMAidFIQL557+i945vRvuNSwFBwu/2hxNJv31TT V8Mg4uixwhxDXcyNhglm1++hUDi46oKFAjgAKpyYD5DDrQJ0rzed0iqczc7lLJ/ZRUME 6gYqqU9m+2xDolo7SyVlCLoX/d0gXJX/CoPe3vGJTExhJL3yVerNnMvxtkbBxrBt1DHG bQ3U6D5axb27Ui3odl3XiIHIOhBlMwIKo2i+vyI5PjufHGCq/Dtu0IJehvhT+KZ9iLNa aRZw== X-Gm-Message-State: AOJu0YyJLeL1702xtomavhFkDMRTj/8V3x2fkewhkBh11WfnujGxEQHo SsNNFMH+e63kStVYNqBm4YDrD8T4DeOUGYMeyw9aYRfcBMCZjwXiIx2EnaISl4J1O1mxNCes27g Y X-Google-Smtp-Source: AGHT+IE0UtdFITRtkwyBY0eikp/nr9vhwv3RE4umUbMFEhWgjM1UULyvGdaIYKg3vccQ6iuFJcTOjQ== X-Received: by 2002:a05:6402:3586:b0:55a:480b:6430 with SMTP id y6-20020a056402358600b0055a480b6430mr1148973edc.116.1705837284739; Sun, 21 Jan 2024 03:41:24 -0800 (PST) Received: from smtpclient.apple ([86.121.22.146]) by smtp.gmail.com with ESMTPSA id q17-20020a056402033100b0055c2f6d7d6csm241655edw.83.2024.01.21.03.41.24 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 21 Jan 2024 03:41:24 -0800 (PST) From: Liviu Ionescu Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.300.61.1.2\)) Subject: Re: -Wall Date: Sun, 21 Jan 2024 13:41:13 +0200 References: To: newlib@sourceware.org In-Reply-To: Message-Id: <273C14D6-0D9D-4E8D-BF08-F9E99BFACC43@livius.net> X-Mailer: Apple Mail (2.3774.300.61.1.2) X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,KAM_ASCII_DIVIDERS,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: > On 19 Jan 2024, at 14:55, Corinna Vinschen = wrote: >=20 > ... I only found a bug because I used -Wall ... For completeness, please note that `-Wall` does not enable **all* = warnings, GCC has additional warnings, that might be useful to spot = other bugs. Below is an excerpt from my CMake scripts. I did not check recent GCC releases, they probably include even more = warnings. Personally I'd use as many of them when `--enable-warnings`. Regards, Liviu ``` if("${CMAKE_C_COMPILER_VERSION}" VERSION_GREATER_EQUAL "7.0.0") # message(VERBOSE "Adding GCC 7 warnings...") list(APPEND ${variable_name} # --------------------------------------------------------------------- # Common GNU C & C++. -Waggregate-return -Wcast-align -Wcast-qual -Wconversion -Wdouble-promotion -Wduplicated-branches -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-nonliteral -Wformat-overflow=3D2 -Wformat-security -Wformat-signedness -Wformat-truncation=3D2 -Wformat-y2k -Wformat=3D2 -Wlogical-op -Wmissing-declarations # Older GCC may include non-existent SDK folders. $<$>:-Wmissing-include-dirs> -Wnull-dereference -Wpacked -Wpadded -Wpointer-arith -Wredundant-decls -Wshadow -Wshift-overflow=3D2 -Wsign-conversion -Wswitch-default -Wswitch-enum -Wundef -Wuninitialized -Wvla # --------------------------------------------------------------------- # GNU C only. $<$:-Wbad-function-cast> $<$:-Wc++-compat> $<$:-Wduplicate-decl-specifier> $<$:-Wmissing-prototypes> $<$:-Wnested-externs> $<$:-Wold-style-definition> $<$:-Wstrict-prototypes> # --------------------------------------------------------------------- # GNU C++ only. # inherits the "cxx11" ABI tag that 'std::string' # $<$:-Wabi-tag> $<$:-Wctor-dtor-privacy> $<$:-Wnoexcept> $<$:-Wnon-virtual-dtor> $<$:-Wold-style-cast> $<$:-Woverloaded-virtual> $<$:-Wplacement-new=3D2> $<$:-Wregister> $<$:-Wsign-promo> $<$:-Wstrict-null-sentinel> $<$:-Wsuggest-final-methods> $<$:-Wsuggest-final-types> $<$:-Wsuggest-override> $<$:-Wuseless-cast> $<$:-Wzero-as-null-pointer-constant> ) endif() if("${CMAKE_C_COMPILER_VERSION}" VERSION_GREATER_EQUAL "8.0.0") # message(VERBOSE "Adding GCC 8 warnings...") list(APPEND ${variable_name} $<$:-Wextra-semi> ) endif() if("${CMAKE_C_COMPILER_VERSION}" VERSION_GREATER_EQUAL "9.0.0") # message(VERBOSE "Adding GCC 9 warnings...") list(APPEND ${variable_name} # None so far. ) endif() if("${CMAKE_C_COMPILER_VERSION}" VERSION_GREATER_EQUAL "10.0.0") # message(VERBOSE "Adding GCC 10 warnings...") list(APPEND ${variable_name} # --------------------------------------------------------------------- # Common GNU C & C++. -Warith-conversion # --------------------------------------------------------------------- # GNU C++ only. $<$:-Wcomma-subscript> $<$:-Wredundant-tags> $<$:-Wvolatile> ) # RISC-V 10.1 fails with `note: replace the class-key with 'struct'`. if(NOT "${CMAKE_C_COMPILER_VERSION}" VERSION_EQUAL "10.1.0") list(APPEND ${variable_name} $<$:-Wmismatched-tags> ) endif() endif() elseif("${CMAKE_C_COMPILER_ID}" MATCHES ".*Clang") message(VERBOSE "Adding clang warnings...") list(APPEND ${variable_name} # For clang things are much easier. -Weverything $<$:-Wno-poison-system-directories> ) endif() ```