From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by sourceware.org (Postfix) with ESMTPS id 06C553836E95 for ; Thu, 25 May 2023 08:06:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 06C553836E95 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=adacore.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=adacore.com Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-30aa1eb95a0so1724171f8f.1 for ; Thu, 25 May 2023 01:06:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=adacore.com; s=google; t=1685001975; x=1687593975; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Psgl39i1/ABW+tZDPmeYXlF4hGfmBcjBcepi72f/iJ8=; b=DADhSPJzEnT8a0pamL6TCsGRBVvqUqtKL6pApmftgyJBi2yJa0AlzMm34dLug2K6Le tnRUFPUcnuNM0iixMarIAzgBdoSoSyvx734woE/ZU4Hq/ghACpD6nRaz78gWGRS/yXEz 2zVrsYZEHQxfA2Ggzck2+db7Q4zyiwBk560ZqctJxqO6PVj7jRZviw414CMZD0DNmQpH 2kB/luclDXVjp/AG4XFfgzM3kwgK7I8PZ1zXOrukj4RybG4+45oOgOTzhsIVdMWxu5/G S+/5PEY35CTu9NhedglzJ03XoU6tKN5UcvufrnitUBm/DZ5BLEnCb60ZNtgIv0yguSaJ gzrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685001975; x=1687593975; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Psgl39i1/ABW+tZDPmeYXlF4hGfmBcjBcepi72f/iJ8=; b=mGUSyB+rQP02D5SZFElT8Aec4T4l0IqMzaa0zhXeepJYKUiK3WKH26a2HjWTBI9Fxj tPzRqekY9JUx33vEUOPA50BDJSmTna/XBOBjr+vU/4C7NCSNZEqC5dkgCvPfEZzDugN6 9vvWKLtqLm5p8vsZWM8cjuhARIAivdznCjueJexJFuQi39OtgfD6EllL6qfqfo4wPwZr tdy075noZ5dfsmO4xEXYYPFWktqK5aUTD2/CIIhmOe2YkrFvEId+dVlAkp+BneuvBnvH rVLUAKY6B8SQuXlVQ0SYL8R1/tO1ndZdBmc53AJJ05IiQs/CYNafWEz0/P/tKvS0BaLe /dqw== X-Gm-Message-State: AC+VfDw5PB8Jo4nuYpTU68IFeYGE5SxqIXxa1zQhnrduD0zcwIg+N0Vq nIqsb0uC6iEsUmkCq+DjvnxQdG3izdnAhgcGkvwWdA== X-Google-Smtp-Source: ACHHUZ4Qg3wc507OW8Waq9bjJj1huABcnQSaDQpgY8wUbasSddPWp7fPn6C3Of5hw8SL5VFjbLDryQ== X-Received: by 2002:a5d:4243:0:b0:30a:ae5b:9e9c with SMTP id s3-20020a5d4243000000b0030aae5b9e9cmr1714942wrr.8.1685001974653; Thu, 25 May 2023 01:06:14 -0700 (PDT) Received: from poulhies-Precision-5550.telnowedge.local (lmontsouris-659-1-24-67.w81-250.abo.wanadoo.fr. [81.250.175.67]) by smtp.gmail.com with ESMTPSA id r15-20020a056000014f00b00309382eb047sm834775wrx.112.2023.05.25.01.06.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 May 2023 01:06:14 -0700 (PDT) From: =?UTF-8?q?Marc=20Poulhi=C3=A8s?= To: gcc-patches@gcc.gnu.org Cc: Eric Botcazou Subject: [COMMITTED] ada: Add size clause to System.Address Date: Thu, 25 May 2023 10:06:13 +0200 Message-Id: <20230525080613.1957364-1-poulhies@adacore.com> X-Mailer: git-send-email 2.40.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-13.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FILL_THIS_FORM,GIT_PATCH_0,KAM_ASCII_DIVIDERS,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: From: Eric Botcazou Standard'Address_Size is the value provided by the code generator for the size of pointers, and it is set as the default size of every thin pointer by the front-end. Now it is documented in the GNAT RM as having the value of System.Address'Size, which is indeed the case on (correctly configured) platforms where pointers contain exactly the number of bits that are needed to address the memory space. However, on platforms where pointers contain additional bits of metadata, it has a larger value and the documented relation does not hold, which also means that unchecked conversions between System.Address and pointers are seen as potentially problematic. In order to fix the discrepancy on these platforms, this change adds the obvious size clause to System.Address, which is confirming on all the other (correctly configured) platforms. gcc/ada/ * libgnat/system-aix.ads (Address): Likewise. * libgnat/system-darwin-arm.ads (Address): Likewise. * libgnat/system-darwin-ppc.ads (Address): Likewise. * libgnat/system-darwin-x86.ads (Address): Likewise. * libgnat/system-djgpp.ads (Address): Likewise. * libgnat/system-dragonfly-x86_64.ads (Address): Likewise. * libgnat/system-freebsd.ads (Address): Likewise. * libgnat/system-hpux-ia64.ads (Address): Likewise. * libgnat/system-hpux.ads (Address): Likewise. * libgnat/system-linux-alpha.ads (Address): Likewise. * libgnat/system-linux-arm.ads (Address): Likewise. * libgnat/system-linux-hppa.ads (Address): Likewise. * libgnat/system-linux-ia64.ads (Address): Likewise. * libgnat/system-linux-m68k.ads (Address): Likewise. * libgnat/system-linux-mips.ads (Address): Likewise. * libgnat/system-linux-ppc.ads (Address): Likewise. * libgnat/system-linux-riscv.ads (Address): Likewise. * libgnat/system-linux-s390.ads (Address): Likewise. * libgnat/system-linux-sh4.ads (Address): Likewise. * libgnat/system-linux-sparc.ads (Address): Likewise. * libgnat/system-linux-x86.ads (Address): Likewise. * libgnat/system-lynxos178-ppc.ads (Address): Likewise. * libgnat/system-lynxos178-x86.ads (Address): Likewise. * libgnat/system-mingw.ads (Address): Likewise. * libgnat/system-qnx-arm.ads (Address): Likewise. * libgnat/system-rtems.ads (Address): Likewise. * libgnat/system-solaris-sparc.ads (Address): Likewise. * libgnat/system-solaris-x86.ads (Address): Likewise. * libgnat/system-vxworks-ppc-kernel.ads (Address): Likewise. * libgnat/system-vxworks-ppc-rtp-smp.ads (Address): Likewise. * libgnat/system-vxworks-ppc-rtp.ads (Address): Likewise. * libgnat/system-vxworks7-aarch64-rtp-smp.ads (Address): Likewise. * libgnat/system-vxworks7-aarch64.ads (Address): Likewise. * libgnat/system-vxworks7-arm-rtp-smp.ads (Address): Likewise. * libgnat/system-vxworks7-arm.ads (Address): Likewise. * libgnat/system-vxworks7-ppc-kernel.ads (Address): Likewise. * libgnat/system-vxworks7-ppc-rtp-smp.ads (Address): Likewise. * libgnat/system-vxworks7-ppc64-kernel.ads (Address): Likewise. * libgnat/system-vxworks7-ppc64-rtp-smp.ads (Address): Likewise. * libgnat/system-vxworks7-x86-kernel.ads (Address): Likewise. * libgnat/system-vxworks7-x86-rtp-smp.ads (Address): Likewise. * libgnat/system-vxworks7-x86_64-kernel.ads (Address): Likewise. * libgnat/system-vxworks7-x86_64-rtp-smp.ads (Address): Likewise. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/libgnat/system-aix.ads | 2 ++ gcc/ada/libgnat/system-darwin-arm.ads | 2 ++ gcc/ada/libgnat/system-darwin-ppc.ads | 2 ++ gcc/ada/libgnat/system-darwin-x86.ads | 2 ++ gcc/ada/libgnat/system-djgpp.ads | 2 ++ gcc/ada/libgnat/system-dragonfly-x86_64.ads | 2 ++ gcc/ada/libgnat/system-freebsd.ads | 2 ++ gcc/ada/libgnat/system-hpux-ia64.ads | 2 ++ gcc/ada/libgnat/system-hpux.ads | 2 ++ gcc/ada/libgnat/system-linux-alpha.ads | 2 ++ gcc/ada/libgnat/system-linux-arm.ads | 2 ++ gcc/ada/libgnat/system-linux-hppa.ads | 2 ++ gcc/ada/libgnat/system-linux-ia64.ads | 2 ++ gcc/ada/libgnat/system-linux-m68k.ads | 2 ++ gcc/ada/libgnat/system-linux-mips.ads | 2 ++ gcc/ada/libgnat/system-linux-ppc.ads | 2 ++ gcc/ada/libgnat/system-linux-riscv.ads | 2 ++ gcc/ada/libgnat/system-linux-s390.ads | 2 ++ gcc/ada/libgnat/system-linux-sh4.ads | 2 ++ gcc/ada/libgnat/system-linux-sparc.ads | 2 ++ gcc/ada/libgnat/system-linux-x86.ads | 2 ++ gcc/ada/libgnat/system-lynxos178-ppc.ads | 2 ++ gcc/ada/libgnat/system-lynxos178-x86.ads | 2 ++ gcc/ada/libgnat/system-mingw.ads | 2 ++ gcc/ada/libgnat/system-qnx-arm.ads | 2 ++ gcc/ada/libgnat/system-rtems.ads | 2 ++ gcc/ada/libgnat/system-solaris-sparc.ads | 2 ++ gcc/ada/libgnat/system-solaris-x86.ads | 2 ++ gcc/ada/libgnat/system-vxworks-ppc-kernel.ads | 2 ++ gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads | 2 ++ gcc/ada/libgnat/system-vxworks-ppc-rtp.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-aarch64-rtp-smp.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-aarch64.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-arm-rtp-smp.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-arm.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-ppc-kernel.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-ppc-rtp-smp.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-ppc64-kernel.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-ppc64-rtp-smp.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-x86-kernel.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-x86-rtp-smp.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-x86_64-kernel.ads | 2 ++ gcc/ada/libgnat/system-vxworks7-x86_64-rtp-smp.ads | 2 ++ 43 files changed, 86 insertions(+) diff --git a/gcc/ada/libgnat/system-aix.ads b/gcc/ada/libgnat/system-aix.ads index 18ed063e2e3..1485df42a45 100644 --- a/gcc/ada/libgnat/system-aix.ads +++ b/gcc/ada/libgnat/system-aix.ads @@ -116,6 +116,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-darwin-arm.ads b/gcc/ada/libgnat/system-darwin-arm.ads index 4e4603b739a..a57bf0b63ea 100644 --- a/gcc/ada/libgnat/system-darwin-arm.ads +++ b/gcc/ada/libgnat/system-darwin-arm.ads @@ -132,6 +132,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-darwin-ppc.ads b/gcc/ada/libgnat/system-darwin-ppc.ads index 80c28c5a785..b6e73fd2104 100644 --- a/gcc/ada/libgnat/system-darwin-ppc.ads +++ b/gcc/ada/libgnat/system-darwin-ppc.ads @@ -132,6 +132,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-darwin-x86.ads b/gcc/ada/libgnat/system-darwin-x86.ads index dc52576fae2..994b22f3b19 100644 --- a/gcc/ada/libgnat/system-darwin-x86.ads +++ b/gcc/ada/libgnat/system-darwin-x86.ads @@ -132,6 +132,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-djgpp.ads b/gcc/ada/libgnat/system-djgpp.ads index 2addbfee0c0..459475e7eab 100644 --- a/gcc/ada/libgnat/system-djgpp.ads +++ b/gcc/ada/libgnat/system-djgpp.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-dragonfly-x86_64.ads b/gcc/ada/libgnat/system-dragonfly-x86_64.ads index 0e8e0ee53bc..6b16156850c 100644 --- a/gcc/ada/libgnat/system-dragonfly-x86_64.ads +++ b/gcc/ada/libgnat/system-dragonfly-x86_64.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-freebsd.ads b/gcc/ada/libgnat/system-freebsd.ads index 23bb9a7f299..32c1cc4324d 100644 --- a/gcc/ada/libgnat/system-freebsd.ads +++ b/gcc/ada/libgnat/system-freebsd.ads @@ -107,6 +107,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-hpux-ia64.ads b/gcc/ada/libgnat/system-hpux-ia64.ads index 991ff9e0639..8eb4a8f8de4 100644 --- a/gcc/ada/libgnat/system-hpux-ia64.ads +++ b/gcc/ada/libgnat/system-hpux-ia64.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-hpux.ads b/gcc/ada/libgnat/system-hpux.ads index 30e029367e8..4c5eb3e56e6 100644 --- a/gcc/ada/libgnat/system-hpux.ads +++ b/gcc/ada/libgnat/system-hpux.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-alpha.ads b/gcc/ada/libgnat/system-linux-alpha.ads index 021a9aa878d..86fcea32272 100644 --- a/gcc/ada/libgnat/system-linux-alpha.ads +++ b/gcc/ada/libgnat/system-linux-alpha.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-arm.ads b/gcc/ada/libgnat/system-linux-arm.ads index 0c942449231..724086ca847 100644 --- a/gcc/ada/libgnat/system-linux-arm.ads +++ b/gcc/ada/libgnat/system-linux-arm.ads @@ -115,6 +115,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-hppa.ads b/gcc/ada/libgnat/system-linux-hppa.ads index 41a8d3f6d42..148b6f02c48 100644 --- a/gcc/ada/libgnat/system-linux-hppa.ads +++ b/gcc/ada/libgnat/system-linux-hppa.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-ia64.ads b/gcc/ada/libgnat/system-linux-ia64.ads index a788eb2fb07..d33282031e5 100644 --- a/gcc/ada/libgnat/system-linux-ia64.ads +++ b/gcc/ada/libgnat/system-linux-ia64.ads @@ -114,6 +114,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-m68k.ads b/gcc/ada/libgnat/system-linux-m68k.ads index 669428b4175..9db322b3814 100644 --- a/gcc/ada/libgnat/system-linux-m68k.ads +++ b/gcc/ada/libgnat/system-linux-m68k.ads @@ -116,6 +116,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-mips.ads b/gcc/ada/libgnat/system-linux-mips.ads index a40a0d27601..929e54b55a0 100644 --- a/gcc/ada/libgnat/system-linux-mips.ads +++ b/gcc/ada/libgnat/system-linux-mips.ads @@ -107,6 +107,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-ppc.ads b/gcc/ada/libgnat/system-linux-ppc.ads index f5bb80187f1..1358bf90953 100644 --- a/gcc/ada/libgnat/system-linux-ppc.ads +++ b/gcc/ada/libgnat/system-linux-ppc.ads @@ -115,6 +115,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-riscv.ads b/gcc/ada/libgnat/system-linux-riscv.ads index 8f8f6e65fc2..420a5025e90 100644 --- a/gcc/ada/libgnat/system-linux-riscv.ads +++ b/gcc/ada/libgnat/system-linux-riscv.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-s390.ads b/gcc/ada/libgnat/system-linux-s390.ads index dee24244ddb..f53c43ff193 100644 --- a/gcc/ada/libgnat/system-linux-s390.ads +++ b/gcc/ada/libgnat/system-linux-s390.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-sh4.ads b/gcc/ada/libgnat/system-linux-sh4.ads index 52c67b653a6..4970b28d846 100644 --- a/gcc/ada/libgnat/system-linux-sh4.ads +++ b/gcc/ada/libgnat/system-linux-sh4.ads @@ -114,6 +114,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-sparc.ads b/gcc/ada/libgnat/system-linux-sparc.ads index 4b4978b0774..a3196643685 100644 --- a/gcc/ada/libgnat/system-linux-sparc.ads +++ b/gcc/ada/libgnat/system-linux-sparc.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-linux-x86.ads b/gcc/ada/libgnat/system-linux-x86.ads index ec17297b0ba..85538d671d0 100644 --- a/gcc/ada/libgnat/system-linux-x86.ads +++ b/gcc/ada/libgnat/system-linux-x86.ads @@ -114,6 +114,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-lynxos178-ppc.ads b/gcc/ada/libgnat/system-lynxos178-ppc.ads index 75f17b211b1..a0ef41187e8 100644 --- a/gcc/ada/libgnat/system-lynxos178-ppc.ads +++ b/gcc/ada/libgnat/system-lynxos178-ppc.ads @@ -121,6 +121,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-lynxos178-x86.ads b/gcc/ada/libgnat/system-lynxos178-x86.ads index 0f4caea11b9..8c8a61e638a 100644 --- a/gcc/ada/libgnat/system-lynxos178-x86.ads +++ b/gcc/ada/libgnat/system-lynxos178-x86.ads @@ -121,6 +121,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-mingw.ads b/gcc/ada/libgnat/system-mingw.ads index af1cb208a48..4b5a7ce0722 100644 --- a/gcc/ada/libgnat/system-mingw.ads +++ b/gcc/ada/libgnat/system-mingw.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-qnx-arm.ads b/gcc/ada/libgnat/system-qnx-arm.ads index e8343998e14..344bd6168f3 100644 --- a/gcc/ada/libgnat/system-qnx-arm.ads +++ b/gcc/ada/libgnat/system-qnx-arm.ads @@ -115,6 +115,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-rtems.ads b/gcc/ada/libgnat/system-rtems.ads index 6518ada80ff..2dc2d812ff1 100644 --- a/gcc/ada/libgnat/system-rtems.ads +++ b/gcc/ada/libgnat/system-rtems.ads @@ -123,6 +123,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-solaris-sparc.ads b/gcc/ada/libgnat/system-solaris-sparc.ads index e667cd5c5ea..7bd84605113 100644 --- a/gcc/ada/libgnat/system-solaris-sparc.ads +++ b/gcc/ada/libgnat/system-solaris-sparc.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-solaris-x86.ads b/gcc/ada/libgnat/system-solaris-x86.ads index b1a27336bf2..60776682a64 100644 --- a/gcc/ada/libgnat/system-solaris-x86.ads +++ b/gcc/ada/libgnat/system-solaris-x86.ads @@ -106,6 +106,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks-ppc-kernel.ads b/gcc/ada/libgnat/system-vxworks-ppc-kernel.ads index e57b1953dee..f12dc6e8507 100644 --- a/gcc/ada/libgnat/system-vxworks-ppc-kernel.ads +++ b/gcc/ada/libgnat/system-vxworks-ppc-kernel.ads @@ -119,6 +119,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads index ff7c0e6b8f5..d8c498fac7f 100644 --- a/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads @@ -125,6 +125,8 @@ private -- Setup proper set of -L's for this configuration type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks-ppc-rtp.ads b/gcc/ada/libgnat/system-vxworks-ppc-rtp.ads index deb7f5fd371..3a3d33694c8 100644 --- a/gcc/ada/libgnat/system-vxworks-ppc-rtp.ads +++ b/gcc/ada/libgnat/system-vxworks-ppc-rtp.ads @@ -124,6 +124,8 @@ private -- Setup proper set of -L's for this configuration type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-aarch64-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks7-aarch64-rtp-smp.ads index 3df8b7b5723..0a7886b0d25 100644 --- a/gcc/ada/libgnat/system-vxworks7-aarch64-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks7-aarch64-rtp-smp.ads @@ -124,6 +124,8 @@ private -- Define the symbol wrs_rtp_base type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-aarch64.ads b/gcc/ada/libgnat/system-vxworks7-aarch64.ads index 103e9497d5b..811fac1bdc9 100644 --- a/gcc/ada/libgnat/system-vxworks7-aarch64.ads +++ b/gcc/ada/libgnat/system-vxworks7-aarch64.ads @@ -121,6 +121,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-arm-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks7-arm-rtp-smp.ads index fae23b1c6ae..abdc2006d11 100644 --- a/gcc/ada/libgnat/system-vxworks7-arm-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks7-arm-rtp-smp.ads @@ -121,6 +121,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-arm.ads b/gcc/ada/libgnat/system-vxworks7-arm.ads index 2fa7ed811f0..0e5e3e647f2 100644 --- a/gcc/ada/libgnat/system-vxworks7-arm.ads +++ b/gcc/ada/libgnat/system-vxworks7-arm.ads @@ -119,6 +119,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-ppc-kernel.ads b/gcc/ada/libgnat/system-vxworks7-ppc-kernel.ads index ed250e5a416..573abe7aa99 100644 --- a/gcc/ada/libgnat/system-vxworks7-ppc-kernel.ads +++ b/gcc/ada/libgnat/system-vxworks7-ppc-kernel.ads @@ -119,6 +119,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-ppc-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks7-ppc-rtp-smp.ads index 503c3268315..cc25943f063 100644 --- a/gcc/ada/libgnat/system-vxworks7-ppc-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks7-ppc-rtp-smp.ads @@ -124,6 +124,8 @@ private -- Define the symbol wrs_rtp_base type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-ppc64-kernel.ads b/gcc/ada/libgnat/system-vxworks7-ppc64-kernel.ads index 1d5d5920c57..f4f1af5d652 100644 --- a/gcc/ada/libgnat/system-vxworks7-ppc64-kernel.ads +++ b/gcc/ada/libgnat/system-vxworks7-ppc64-kernel.ads @@ -121,6 +121,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-ppc64-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks7-ppc64-rtp-smp.ads index b55f28939e5..4868891bb41 100644 --- a/gcc/ada/libgnat/system-vxworks7-ppc64-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks7-ppc64-rtp-smp.ads @@ -124,6 +124,8 @@ private -- Define the symbol wrs_rtp_base type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-x86-kernel.ads b/gcc/ada/libgnat/system-vxworks7-x86-kernel.ads index 471009827f1..e60e1220d32 100644 --- a/gcc/ada/libgnat/system-vxworks7-x86-kernel.ads +++ b/gcc/ada/libgnat/system-vxworks7-x86-kernel.ads @@ -119,6 +119,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-x86-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks7-x86-rtp-smp.ads index 867e39f061f..b8a25a3cb53 100644 --- a/gcc/ada/libgnat/system-vxworks7-x86-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks7-x86-rtp-smp.ads @@ -122,6 +122,8 @@ private -- Define the symbol wrs_rtp_base type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-x86_64-kernel.ads b/gcc/ada/libgnat/system-vxworks7-x86_64-kernel.ads index dc00937b8e3..273529f954c 100644 --- a/gcc/ada/libgnat/system-vxworks7-x86_64-kernel.ads +++ b/gcc/ada/libgnat/system-vxworks7-x86_64-kernel.ads @@ -119,6 +119,8 @@ package System is private type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- diff --git a/gcc/ada/libgnat/system-vxworks7-x86_64-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks7-x86_64-rtp-smp.ads index 501ee727763..a2ea30a8ed6 100644 --- a/gcc/ada/libgnat/system-vxworks7-x86_64-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks7-x86_64-rtp-smp.ads @@ -122,6 +122,8 @@ private -- Define the symbol wrs_rtp_base type Address is mod Memory_Size; + for Address'Size use Standard'Address_Size; + Null_Address : constant Address := 0; -------------------------------------- -- 2.40.0