https://gcc.gnu.org/g:499c58f443e97198c30776f54bc57ea2af48245d

commit r15-8665-g499c58f443e97198c30776f54bc57ea2af48245d
Author: Iain Buclaw <ibuc...@gdcproject.org>
Date:   Sat Mar 22 10:26:47 2025 +0100

    libphobos: Add module declaration to rt.invariant
    
    This prevents conflicts with a user-provided `invariant.d' module.
    
    gcc/d/ChangeLog:
    
            * runtime.def (INVARIANT): Update signature of run-time function.
    
    libphobos/ChangeLog:
    
            * libdruntime/Makefile.am (DRUNTIME_DSOURCES): Rename rt/invariant.d
            to rt/invariant_.d.
            * libdruntime/Makefile.in: Regenerate.
            * libdruntime/rt/invariant.d: Move to...
            * libdruntime/rt/invariant_.d: ...here.

Diff:
---
 gcc/d/runtime.def                                      | 4 ++--
 libphobos/libdruntime/Makefile.am                      | 2 +-
 libphobos/libdruntime/Makefile.in                      | 6 +++---
 libphobos/libdruntime/rt/{invariant.d => invariant_.d} | 9 ++-------
 4 files changed, 8 insertions(+), 13 deletions(-)

diff --git a/gcc/d/runtime.def b/gcc/d/runtime.def
index e4261946e00b..4aff0a6e16a5 100644
--- a/gcc/d/runtime.def
+++ b/gcc/d/runtime.def
@@ -142,8 +142,8 @@ DEF_D_RUNTIME (CXA_END_CATCH, "__cxa_end_catch", RT(VOID), 
P0(), 0)
 
 /* When invariant() contracts are turned on, used after testing whether a
    class != null for validating the state of a class.  */
-DEF_D_RUNTIME (INVARIANT, "_D9invariant12_d_invariantFC6ObjectZv", RT(VOID),
-              P1(OBJECT), 0)
+DEF_D_RUNTIME (INVARIANT, "_D2rt10invariant_12_d_invariantFC6ObjectZv",
+              RT(VOID), P1(OBJECT), 0)
 
 #undef P0
 #undef P1
diff --git a/libphobos/libdruntime/Makefile.am 
b/libphobos/libdruntime/Makefile.am
index 595e3f974c0c..252c6a3eebbc 100644
--- a/libphobos/libdruntime/Makefile.am
+++ b/libphobos/libdruntime/Makefile.am
@@ -222,7 +222,7 @@ DRUNTIME_DSOURCES = core/atomic.d core/attribute.d 
core/bitop.d \
        gcc/unwind/generic.d gcc/unwind/package.d gcc/unwind/pe.d object.d \
        rt/aApply.d rt/aApplyR.d rt/aaA.d rt/adi.d rt/arraycat.d rt/cast_.d \
        rt/config.d rt/critical_.d rt/deh.d rt/dmain2.d rt/ehalloc.d \
-       rt/invariant.d rt/lifetime.d rt/memory.d rt/minfo.d rt/monitor_.d \
+       rt/invariant_.d rt/lifetime.d rt/memory.d rt/minfo.d rt/monitor_.d \
        rt/profilegc.d rt/sections.d rt/tlsgc.d rt/util/typeinfo.d \
        rt/util/utility.d
 
diff --git a/libphobos/libdruntime/Makefile.in 
b/libphobos/libdruntime/Makefile.in
index 4832fd15c408..52b0c377241e 100644
--- a/libphobos/libdruntime/Makefile.in
+++ b/libphobos/libdruntime/Makefile.in
@@ -248,7 +248,7 @@ am__objects_1 = core/atomic.lo core/attribute.lo 
core/bitop.lo \
        gcc/unwind/generic.lo gcc/unwind/package.lo gcc/unwind/pe.lo \
        object.lo rt/aApply.lo rt/aApplyR.lo rt/aaA.lo rt/adi.lo \
        rt/arraycat.lo rt/cast_.lo rt/config.lo rt/critical_.lo \
-       rt/deh.lo rt/dmain2.lo rt/ehalloc.lo rt/invariant.lo \
+       rt/deh.lo rt/dmain2.lo rt/ehalloc.lo rt/invariant_.lo \
        rt/lifetime.lo rt/memory.lo rt/minfo.lo rt/monitor_.lo \
        rt/profilegc.lo rt/sections.lo rt/tlsgc.lo rt/util/typeinfo.lo \
        rt/util/utility.lo
@@ -903,7 +903,7 @@ DRUNTIME_DSOURCES = core/atomic.d core/attribute.d 
core/bitop.d \
        gcc/unwind/generic.d gcc/unwind/package.d gcc/unwind/pe.d object.d \
        rt/aApply.d rt/aApplyR.d rt/aaA.d rt/adi.d rt/arraycat.d rt/cast_.d \
        rt/config.d rt/critical_.d rt/deh.d rt/dmain2.d rt/ehalloc.d \
-       rt/invariant.d rt/lifetime.d rt/memory.d rt/minfo.d rt/monitor_.d \
+       rt/invariant_.d rt/lifetime.d rt/memory.d rt/minfo.d rt/monitor_.d \
        rt/profilegc.d rt/sections.d rt/tlsgc.d rt/util/typeinfo.d \
        rt/util/utility.d
 
@@ -1413,7 +1413,7 @@ rt/critical_.lo: rt/$(am__dirstamp)
 rt/deh.lo: rt/$(am__dirstamp)
 rt/dmain2.lo: rt/$(am__dirstamp)
 rt/ehalloc.lo: rt/$(am__dirstamp)
-rt/invariant.lo: rt/$(am__dirstamp)
+rt/invariant_.lo: rt/$(am__dirstamp)
 rt/lifetime.lo: rt/$(am__dirstamp)
 rt/memory.lo: rt/$(am__dirstamp)
 rt/minfo.lo: rt/$(am__dirstamp)
diff --git a/libphobos/libdruntime/rt/invariant.d 
b/libphobos/libdruntime/rt/invariant_.d
similarity index 70%
rename from libphobos/libdruntime/rt/invariant.d
rename to libphobos/libdruntime/rt/invariant_.d
index e536196e8c8f..2a64dc89da6c 100644
--- a/libphobos/libdruntime/rt/invariant.d
+++ b/libphobos/libdruntime/rt/invariant_.d
@@ -4,15 +4,10 @@
  * Copyright: Copyright Digital Mars 2007 - 2010.
  * License:   $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
  * Authors:   Walter Bright
- * Source: $(DRUNTIMESRC rt/_invariant.d)
- */
-
-/*          Copyright Digital Mars 2007 - 2010.
- * Distributed under the Boost Software License, Version 1.0.
- *    (See accompanying file LICENSE or copy at
- *          http://www.boost.org/LICENSE_1_0.txt)
+ * Source: $(DRUNTIMESRC rt/_invariant_.d)
  */
 
+module rt.invariant_;
 
 /**
  *

Reply via email to