From patchwork Wed Jun 10 11:59:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Giuliano Procida X-Patchwork-Id: 39557 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id C3FEB3898512; Wed, 10 Jun 2020 12:00:13 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C3FEB3898512 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1591790413; bh=4ORob4PpWtKUu1p5jWRtkM0IY1hcT0ZqZfb+TCROns8=; h=Date:In-Reply-To:References:Subject:To:List-Id:List-Unsubscribe: List-Archive:List-Help:List-Subscribe:From:Reply-To:Cc:From; b=oeTV3qRelrVSb7h/fgW76m4aT5TFKJYCEkTpQjz4b+TjmCwOPiG5QN170QvkiN/dr SytgZ7fIX3qzn6M4UggVEarX33BnXW85WL6WnJgvfGUH8OWRPNORaKTfQwif52QAM5 h3vwKPzGLvJZq5pn9T1q0U88hfk5j9jtDcp+6JUo= X-Original-To: libabigail@sourceware.org Delivered-To: libabigail@sourceware.org Received: from mail-qv1-xf4a.google.com (mail-qv1-xf4a.google.com [IPv6:2607:f8b0:4864:20::f4a]) by sourceware.org (Postfix) with ESMTPS id 07BA9388F06E for ; Wed, 10 Jun 2020 12:00:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 07BA9388F06E Received: by mail-qv1-xf4a.google.com with SMTP id j4so1551018qvt.20 for ; Wed, 10 Jun 2020 05:00:07 -0700 (PDT) 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=4ORob4PpWtKUu1p5jWRtkM0IY1hcT0ZqZfb+TCROns8=; b=YK9IBAyZ/ZFzil227CI77UualEFB7boOdNoMBg55sz8TRqq4R6LF3uLJ5vMcXZiyFW BIh1iD5MB46RFUHDVbheWtxY2pIGcyvf+txTr/AMkCojLx9PdWT+0JoWvwTHnjAhBRDf b1/KmnE1khOEFlLIJaOcN7+aSX2d57T15Hjcwdim6OI2m4ayb1C8w/KdL54ki3Z8C2C5 wKwzgEOXS3u4j8PXg3CLqhF0Lp7u4tWlcFZt/N+EnDXGgU51Mt1jSV/ExmT3nlLJihMT lCtiNND7CrgtJXGGYpzO3Rr6hDbFsg+4fvJMwEWZzahxmKx4S2WzEjxdTC9b13SXyC81 oWlQ== X-Gm-Message-State: AOAM532+VJPAHJms7TFMgw29BanIzISEHmRIWl4YK61c9sTjEOMdLeKI e9qr5bVIHhCrYBVD5YJrpkLdxacaHU/14CoO7jn6LmxgLHVd9vXflf7ei9IgXSmLuvAhwie+p4l /4DdRjl3Qm5XsAcrEMs35nwPEkRyndtB+LSj1sSc+qW2Ft4v/3ai3PWJOKsj4rBjhzF0N1+s= X-Google-Smtp-Source: ABdhPJwZ2MbqracmQ8GNymUqslMymRjQzMaphwwLk0e7bHb6nMua54LeuSbKHhBOWxKHGJPFL4riHmcyEVzZcw== X-Received: by 2002:a0c:c1c3:: with SMTP id v3mr2754787qvh.222.1591790406521; Wed, 10 Jun 2020 05:00:06 -0700 (PDT) Date: Wed, 10 Jun 2020 12:59:40 +0100 In-Reply-To: <20200610115940.26035-1-gprocida@google.com> Message-Id: <20200610115940.26035-12-gprocida@google.com> Mime-Version: 1.0 References: <20200610115940.26035-1-gprocida@google.com> X-Mailer: git-send-email 2.27.0.278.ge193c7cf3a9-goog Subject: [PATCH 11/11] Add tests for declaration-only enums. To: libabigail@sourceware.org X-Spam-Status: No, score=-24.1 required=5.0 tests=BAYES_00, DKIMWL_WL_MED, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Mailing list of the Libabigail project List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-Patchwork-Original-From: Giuliano Procida via Libabigail From: Giuliano Procida Reply-To: Giuliano Procida Cc: kernel-team@android.com, gprocida@google.com Errors-To: libabigail-bounces@sourceware.org Sender: "Libabigail" Signed-off-by: Giuliano Procida Signed-off-by: Giuliano Procida Signed-off-by: Dodji Seketeli --- tests/data/Makefile.am | 5 +++++ .../test-decl-enum-report.txt | 17 +++++++++++++++++ .../data/test-abidiff-exit/test-decl-enum-v0.c | 5 +++++ .../data/test-abidiff-exit/test-decl-enum-v0.o | Bin 0 -> 3048 bytes .../data/test-abidiff-exit/test-decl-enum-v1.c | 5 +++++ .../data/test-abidiff-exit/test-decl-enum-v1.o | Bin 0 -> 3048 bytes tests/test-abidiff-exit.cc | 9 +++++++++ 7 files changed, 41 insertions(+) create mode 100644 tests/data/test-abidiff-exit/test-decl-enum-report.txt create mode 100644 tests/data/test-abidiff-exit/test-decl-enum-v0.c create mode 100644 tests/data/test-abidiff-exit/test-decl-enum-v0.o create mode 100644 tests/data/test-abidiff-exit/test-decl-enum-v1.c create mode 100644 tests/data/test-abidiff-exit/test-decl-enum-v1.o diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index 6592ba32..7b239682 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -158,6 +158,11 @@ test-abidiff-exit/test-fun-param-v0.o \ test-abidiff-exit/test-fun-param-v1.abi \ test-abidiff-exit/test-fun-param-v1.c \ test-abidiff-exit/test-fun-param-v1.o \ +test-abidiff-exit/test-decl-enum-v0.c \ +test-abidiff-exit/test-decl-enum-v0.o \ +test-abidiff-exit/test-decl-enum-v1.c \ +test-abidiff-exit/test-decl-enum-v1.o \ +test-abidiff-exit/test-decl-enum-report.txt \ \ test-diff-dwarf/test0-v0.cc \ test-diff-dwarf/test0-v0.o \ diff --git a/tests/data/test-abidiff-exit/test-decl-enum-report.txt b/tests/data/test-abidiff-exit/test-decl-enum-report.txt new file mode 100644 index 00000000..e46ebfa6 --- /dev/null +++ b/tests/data/test-abidiff-exit/test-decl-enum-report.txt @@ -0,0 +1,17 @@ +Functions changes summary: 0 Removed, 2 Changed, 0 Added functions +Variables changes summary: 0 Removed, 0 Changed, 0 Added variable + +2 functions with some indirect sub-type change: + + [C] 'function void reg1(const embodied_enum*)' at test-decl-enum-v1.c:4:1 has some indirect sub-type changes: + parameter 1 of type 'const embodied_enum*' has sub-type changes: + in pointed to type 'const embodied_enum': + in unqualified underlying type 'enum embodied_enum' at test-decl-enum-v1.c:1:1: + enum type enum embodied_enum was a declaration-only enum type and is now a defined enum type + + [C] 'function void reg2(const disembodied_enum*)' at test-decl-enum-v1.c:5:1 has some indirect sub-type changes: + parameter 1 of type 'const disembodied_enum*' has sub-type changes: + in pointed to type 'const disembodied_enum': + in unqualified underlying type 'enum disembodied_enum': + enum type enum disembodied_enum was a defined enum type and is now a declaration-only enum type + diff --git a/tests/data/test-abidiff-exit/test-decl-enum-v0.c b/tests/data/test-abidiff-exit/test-decl-enum-v0.c new file mode 100644 index 00000000..d5672618 --- /dev/null +++ b/tests/data/test-abidiff-exit/test-decl-enum-v0.c @@ -0,0 +1,5 @@ +enum embodied_enum; +enum disembodied_enum { X }; + +void reg1(const enum embodied_enum * foo) { (void)foo; } +void reg2(const enum disembodied_enum * foo) { (void)foo; } diff --git a/tests/data/test-abidiff-exit/test-decl-enum-v0.o b/tests/data/test-abidiff-exit/test-decl-enum-v0.o new file mode 100644 index 0000000000000000000000000000000000000000..b4c0b06a089ec6adbfa81b1a619ae30087e54f9d GIT binary patch literal 3048 zcmbtWUuzsy6hE^wo1Hk#Hp$xBG=+{(+eDplH%QIaCa$Ko2^OhB#TN;)J2$(7+1WBP zTT?|XqC&xk3W5lt4}JmB7hejZzU!Cp!8d&qe9&`d?%CYjOcC_J+KSmHb@am$eB+q~vtHPqTc9wV6Q4e}KyI}vx)qwOM&$&iJ&Jx5 zVA=x8a&ZBRcpRVne88rfCZwL<1VrX4J|;Yht6}_ApTRZ1Tf77VGLdFpD0;h|h{r?k zX4CKGuGPn2y2ydzvFh>ns{R_T6%)P3aT@hw5xP;Fff#m2VI;zB@`o@=4+2+SyzXwa zo^sp%ir;cqnyq%L)oi=oFdN5WtuJDcL_HLPq&HaGTRrccf712(uD27Ux8mL)8O5V< z>W$+!qB!)jpt~#5(wY;|ZvieV@I*Ge0dQqwi6; zm%-SZH5QN5?7Mh8rx2%yDF3>it_4 z0FI&EymAiQ*(W8=GVlNLMNHoK0ra1=KJuKIaC%E>ETXw$1IBMlnd%~9{EI>aYDyxy zxk=L?zf2$!*{iMU=jeW%MJZFG5^?-O0(eO>jDIF&nutW4m(Sya0-nVAM9Lq@o$aLv z-)i=JgM3z$x5~!2&q`j8)4mVxN}SF{J)e$-bN%3_w}#m4xMxYR517luUIu;`WC8fy zGzC8qyMZ5y?zq1l#XBR^<$TcXCgSD+b&v#cALobavKz&MT`&dsz0q(eaIX3BC=))8 zFE7o4-s{py47PWYU?^na|8t{zr!(Yp=5QU!=mVW>ReBf&!t@F7ifW|ry8k)U(RcY@ z{afg($E0+e|0fa@(ru~V=pR8xu_5*s0+Cjw1AT7M==iQi9wExp9f@ zwGxbMzm)z>5){&Ny@0y1`fYik>`(R6bk*w*5z}KL1V2lV>QhO#-9}|u{#BWu&x!KW zeADyaK#XEG@loltY|^h(5P8ne`&$yz{eO`D^nIzse!RbrO6FC&-_#+YD0EwzgM{hk zze|AUBZuJkXPM?=+4)^7xj*{#Vt+o@vfLDVQ#RB<7EHe2X1gf;sEc>&e)U5_5x4ZH}C!4-}$@u-n@Rb z#26@Ium)pIp#Te&vD^}33+gZnH#hcv+t~Z;ul)~y(!?Lo!xmmuk?e?&HFjK+OC(q9 zP2`MCT*1Nm0GaI}E8C*(1d71QVj$5WhQyxSMPAt+4A8o`hjQu59#qLxvB@-9eSka< zw+q6*Cr=S>pCg&VC#%#0uo?Dzt?pR0`PvMdtxP|MR-0M1HOFx_>zABYou$BJ9tXl4SevZ<#PCR;Jj>0Ns49hK>_0kD|stuI<@*H-3 z6jM+xxIjHoH~FN5L`+}55s1Qd{496@Ib(mV)H7Df-_H0s7YbfY*cOb|vX@3#kG#KSF03)kMh>8>|kahv|K z-*A_g8qG#ysp)$CY#8&^E{}N2_6|?sV14&BDsfnxTfEd{>lM$)No?8xcI{r5N`OjesZIrkihfJ2- za?@a8L=jo?u9-F~Klmn$S+vWnSuL2 z>!5D-Nr@|6jfIDBd?H3Oeg@-5_Z?+bnQ)rrGJZre`2Y%6GorqT6#jLt0^UwRv~#0N zgYsey3xDzcNZr?Ps{2stbWw>^{#*liM+ypmEcN&0sOqZqxM%pEk@~)YeB(^5A5n@_=AiPPHX>(erD)j#;@ojzW39J3@JdrHdqZU%lBWC8f?GzCB5 zJAoha_OQDZ#oGh42{~xD6Mp-EIY@%Ii!X;BvJ=HzgV2eGA~pY91EBY>X#H*!>>vHTRJ>Z(qS};uLtdz!Y?%Hh^baxPX-~|%hY);6 YO(C7mhY>gDPkD>t@5}z5wtp(&zdst)dH?_b literal 0 HcmV?d00001 diff --git a/tests/test-abidiff-exit.cc b/tests/test-abidiff-exit.cc index 4d9c1943..4fc1eec7 100644 --- a/tests/test-abidiff-exit.cc +++ b/tests/test-abidiff-exit.cc @@ -212,6 +212,15 @@ InOutSpec in_out_specs[] = "data/test-abidiff-exit/test-fun-param-report.txt", "output/test-abidiff-exit/test-fun-param-report.txt" }, + { + "data/test-abidiff-exit/test-decl-enum-v0.o", + "data/test-abidiff-exit/test-decl-enum-v1.o", + "", + "--harmless", + abigail::tools_utils::ABIDIFF_ABI_CHANGE, + "data/test-abidiff-exit/test-decl-enum-report.txt", + "output/test-abidiff-exit/test-decl-enum-report.txt" + }, {0, 0, 0 ,0, abigail::tools_utils::ABIDIFF_OK, 0, 0} };