Received: by 2002:a05:6a10:a852:0:0:0:0 with SMTP id d18csp172009pxy; Fri, 7 May 2021 00:04:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyyyC6LrOlEGvxHUhb9L+B+nMApNM7J2hUf7kKf2hxW/2xp6lkzTia3Rq+i9YCHpt+3SAMm X-Received: by 2002:a17:90a:6587:: with SMTP id k7mr21690901pjj.97.1620371055853; Fri, 07 May 2021 00:04:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620371055; cv=none; d=google.com; s=arc-20160816; b=E+LBJU6+5bPAwepXWD+3yNRDpra00pDqDzSNa3ZudhkExTYtGJo2a9NspsAtj74KmL Z7sgHrH8Z2xDaaEACiARoAZ7JZ3Yx8p0EX/DReAh+0ItSIDlH/Dr4NydUY9VQL+1qfT9 l+w3bmCCivlsRM9q4QJ+A3d/thHAlAtqAJdZGZDU5L4s0ItGBaMr4MPBYe/oyW/Vuifv TZoYllrKEyRxhYW63GzaA+NZoMSP8zeMssTMqtmbdzKgE1UZwJerlOIxt8VpMWfK1s4q I+03m6I1Cut9APMujx6kSKavG/9dzUYmLvYFvC1yInnL9br6GuYGnuiBcQWZNxyykKhJ 1h1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=HRBAR21u7PRZM/8/eMSlewl7NCMmiIJxdjUH7mvZekY=; b=B85nsrWULmwW9QzgzUCVNfJwhsetdSGgeRxJ9G5gVZpYlW3hytkYhpvux0JaIbMGzL LEkleF5osYhjvyrCLsFcyu2Z6YodSHs5m8crumTg2wT3Q5ZM50pv2BDAW70SW5S4R/+2 qZfQPgYGaeOoNoYlgDEK46hH4ffkTgRdi4dCqfMba0/SH6wnKKH/xVP++EQqxu3srXlL MTMmSt+a+ZAOTjWNvGWTDmJkixOYaI/m7TMT2PRP/aenHzcyHT6Faf5ITcNzbJavkIjt MEZPEoN22fAE6jIkSW18bYkGp6ewtFbHfoG9TWZnGZmztI60U6SAdRmwbWIdUR33NpuG S1Vg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=DhGNJidw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s6si1534609pgv.154.2021.05.07.00.04.03; Fri, 07 May 2021 00:04:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=DhGNJidw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233265AbhEGFKc (ORCPT + 99 others); Fri, 7 May 2021 01:10:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44660 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233240AbhEGFKb (ORCPT ); Fri, 7 May 2021 01:10:31 -0400 Received: from mail-yb1-xb4a.google.com (mail-yb1-xb4a.google.com [IPv6:2607:f8b0:4864:20::b4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8AF63C061761 for ; Thu, 6 May 2021 22:09:32 -0700 (PDT) Received: by mail-yb1-xb4a.google.com with SMTP id l9-20020a5b0b890000b02904f7fb53ca12so8772917ybq.15 for ; Thu, 06 May 2021 22:09:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=HRBAR21u7PRZM/8/eMSlewl7NCMmiIJxdjUH7mvZekY=; b=DhGNJidwdrI3KXAJXGCmwGs1p7rL6egOFnrxLtNMmdergPEvrfY5NzHibtJacZfh8c VdjMv+Gx6FvB0wDZfPIidP3RVhGOJgz87g/tHu4bf0CSo6lr9cuey2az4gb0JHDkIKTU Wuz5yC9bRlYmf4g+9ZReAKGIR6hIMyw7rD76FXyy8BuWJsz3Sk56KbXQtPdWruz+D2c1 GbWPtcXtLzA5+iPIx5fu508twhW3F0oxlcXJDaMd2CDs68G9Db+u+XFFME6dK9rMhsQS v31gn4PQLWvAg7ecWh4KXdeWVDA4dTn4TJtd5IkFEs0WqTbhAdh5i3pDlqT9gnCItcwA 7ohQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=HRBAR21u7PRZM/8/eMSlewl7NCMmiIJxdjUH7mvZekY=; b=j99DsV/1DPw/8wgWjrkrc6KZwCn7JRW5FzyNh2DJ0c8bVTodl9g/1BwjLwaPtt+fjg g9PqG+J64XIKtQHJ1NlvqFKs1kcNnkakUlTt+l7bnX5uQ8TZI6VgJF3hAj4NBnemyiXY Ja4wCWLqCWzG5kD2y2pgDe1JR+L6YfMBEvvGN6UBhJvLA7sDGznBLJ5vkm8ut+ircMYv usNuwI9JtNLvohgZpqsxZd4oGvyrIT4psqn6yqflFwn+ZvDAo6tei9rqlNcE0IsdRSAL +C8Ze0z9avolVHEnAOKHjrbBA1RPgx0re9SjB372eANWpv/FBNUZX0YFd14r6lRa8E0u q5aA== X-Gm-Message-State: AOAM531qqQm/iHzd1NAj9Xbrtn4R+LoqsfruBdP/g9AkMWQOmLTpM3wK CFnf4LHxw75yKEuXze8o8lRiPEQhMy/XAg== X-Received: from spirogrip.svl.corp.google.com ([2620:15c:2cb:201:7a7f:ce22:a6af:49e5]) (user=davidgow job=sendgmr) by 2002:a25:bd50:: with SMTP id p16mr11249160ybm.290.1620364171642; Thu, 06 May 2021 22:09:31 -0700 (PDT) Date: Thu, 6 May 2021 22:09:08 -0700 In-Reply-To: <20210507050908.1008686-1-davidgow@google.com> Message-Id: <20210507050908.1008686-2-davidgow@google.com> Mime-Version: 1.0 References: <20210507050908.1008686-1-davidgow@google.com> X-Mailer: git-send-email 2.31.1.607.g51e8a6a459-goog Subject: [PATCH 2/2] kunit: Assign strings to 'const char*' in STREQ assertions From: David Gow To: Brendan Higgins , Daniel Latypov , Shuah Khan Cc: David Gow , kunit-dev@googlegroups.com, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Currently, the KUNIT_EXPECT_STREQ() and related macros assign both string arguments to variables of their own type (via typeof()). This seems to be to prevent the macro argument from being evaluated multiple times. However, yhis doesn't work if one of these is a fixed-length character array, rather than a character pointer, as (for example) char[16] will always allocate a new string. By always using 'const char*' (the type strcmp expects), we're always just taking a pointer to the string, which works even with character arrays. Signed-off-by: David Gow --- include/kunit/test.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/kunit/test.h b/include/kunit/test.h index 4c56ffcb7403..b68c61348121 100644 --- a/include/kunit/test.h +++ b/include/kunit/test.h @@ -1128,8 +1128,8 @@ do { \ fmt, \ ...) \ do { \ - typeof(left) __left = (left); \ - typeof(right) __right = (right); \ + const char *__left = (left); \ + const char *__right = (right); \ \ KUNIT_ASSERTION(test, \ strcmp(__left, __right) op 0, \ -- 2.31.1.607.g51e8a6a459-goog