<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">diff --git t/06_prompt_text.t t/06_prompt_text.t
index 4eb6790..bda3c69 100644
--- t/06_prompt_text.t
+++ t/06_prompt_text.t
@@ -19,7 +19,8 @@ use Config;
 
 BEGIN {
     BEGIN { if (not $] &lt; 5.006 ) { warnings-&gt;unimport('redefine') } }
-    *Config::STORE = sub { $_[0]-&gt;{$_[1]} = $_[2] }
+    plan skip_all =&gt; "XSConfig is readonly" if $Config{usecperl} or exists &amp;Config::KEYS;
+    *Config::STORE = sub { $_[0]-&gt;{$_[1]} = $_[2] };
 }
 
 # For these tests, hide perl_patchlevel so all prompts are tested
@@ -41,7 +42,7 @@ my $mock_dist = t::MockCPANDist-&gt;new(
     author_id       =&gt; "JOHNQP",
     author_fullname =&gt; "John Q. Public",
 );
-    
+
 my $case = {
     label =&gt; "t-Fail",
     name =&gt; "t-Fail",
@@ -88,7 +89,7 @@ plan tests =&gt; 2 + ( scalar keys %prompts ) + $config_plus_dispatch
 require_ok('CPAN::Reporter');
 require_ok('CPAN::Reporter::History');
 
-test_fake_config( 
+test_fake_config(
         edit_report =&gt; "ask/no",
         send_report =&gt; "ask/yes",
         send_duplicates =&gt; "ask/yes",
diff --git t/65_skipfile.t t/65_skipfile.t
index 5809378..cc09afc 100644
--- t/65_skipfile.t
+++ t/65_skipfile.t
@@ -20,6 +20,7 @@ use Config;
 
 BEGIN {
     BEGIN { if (not $] &lt; 5.006 ) { warnings-&gt;unimport('redefine') } }
+    plan skip_all =&gt; "XSConfig is readonly" if $Config{usecperl} or exists &amp;Config::KEYS;
     *Config::STORE = sub { $_[0]-&gt;{$_[1]} = $_[2] }
 }
 
</pre></body></html>