From 09cad5b22f49b1ba4131b9f21c42ec8f15cd5714 Mon Sep 17 00:00:00 2001
From: Mark Tyneway <mark.tyneway@gmail.com>
Date: Mon, 18 Jul 2022 05:36:56 -0700
Subject: [PATCH] contracts-bedrock: pin to solidity 0.8.15

---
 .../contracts-bedrock/contracts/L1/L1CrossDomainMessenger.sol | 2 +-
 packages/contracts-bedrock/contracts/L1/L1StandardBridge.sol  | 2 +-
 packages/contracts-bedrock/contracts/L1/L2OutputOracle.sol    | 2 +-
 packages/contracts-bedrock/contracts/L1/OptimismPortal.sol    | 2 +-
 packages/contracts-bedrock/contracts/L1/ResourceMetering.sol  | 2 +-
 packages/contracts-bedrock/contracts/L2/GasPriceOracle.sol    | 2 +-
 packages/contracts-bedrock/contracts/L2/L1Block.sol           | 2 +-
 .../contracts-bedrock/contracts/L2/L2CrossDomainMessenger.sol | 2 +-
 packages/contracts-bedrock/contracts/L2/L2StandardBridge.sol  | 2 +-
 .../contracts-bedrock/contracts/L2/L2ToL1MessagePasser.sol    | 2 +-
 packages/contracts-bedrock/contracts/L2/SequencerFeeVault.sol | 2 +-
 .../contracts-bedrock/contracts/legacy/AddressManager.sol     | 2 +-
 .../contracts-bedrock/contracts/legacy/DeployerWhitelist.sol  | 2 +-
 packages/contracts-bedrock/contracts/legacy/L1BlockNumber.sol | 2 +-
 .../contracts-bedrock/contracts/legacy/L1ChugSplashProxy.sol  | 2 +-
 .../contracts-bedrock/contracts/legacy/LegacyERC20ETH.sol     | 2 +-
 .../contracts/legacy/ResolvedDelegateProxy.sol                | 2 +-
 packages/contracts-bedrock/contracts/libraries/Burn.sol       | 2 +-
 packages/contracts-bedrock/contracts/libraries/Bytes.sol      | 2 +-
 packages/contracts-bedrock/contracts/libraries/Encoding.sol   | 2 +-
 packages/contracts-bedrock/contracts/libraries/Hashing.sol    | 2 +-
 packages/contracts-bedrock/contracts/libraries/Predeploys.sol | 2 +-
 .../contracts-bedrock/contracts/libraries/rlp/RLPReader.sol   | 2 +-
 .../contracts-bedrock/contracts/libraries/rlp/RLPWriter.sol   | 2 +-
 .../contracts-bedrock/contracts/libraries/trie/MerkleTrie.sol | 2 +-
 .../contracts/libraries/trie/SecureMerkleTrie.sol             | 2 +-
 packages/contracts-bedrock/contracts/test/BenchmarkTest.t.sol | 4 ++--
 packages/contracts-bedrock/contracts/test/CommonTest.t.sol    | 2 +-
 .../contracts-bedrock/contracts/test/DeployerWhitelist.t.sol  | 4 ++--
 packages/contracts-bedrock/contracts/test/Encoding.t.sol      | 2 +-
 .../contracts-bedrock/contracts/test/GasPriceOracle.t.sol     | 4 ++--
 packages/contracts-bedrock/contracts/test/Hashing.t.sol       | 2 +-
 packages/contracts-bedrock/contracts/test/L1Block.t.sol       | 4 ++--
 packages/contracts-bedrock/contracts/test/L1BlockNumber.t.sol | 4 ++--
 .../contracts/test/L1CrossDomainMessenger.t.sol               | 4 ++--
 .../contracts-bedrock/contracts/test/L1StandardBridge.t.sol   | 4 ++--
 .../contracts/test/L2CrossDomainMessenger.t.sol               | 4 ++--
 .../contracts-bedrock/contracts/test/L2OutputOracle.t.sol     | 4 ++--
 .../contracts-bedrock/contracts/test/L2StandardBridge.t.sol   | 4 ++--
 .../contracts/test/L2ToL1MessagePasser.t.sol                  | 4 ++--
 .../contracts-bedrock/contracts/test/LegacyERC20ETH.t.sol     | 2 +-
 .../contracts/test/OptimismMintableERC20.t.sol                | 2 +-
 .../contracts/test/OptimismMintableERC20Factory.t.sol         | 2 +-
 .../contracts-bedrock/contracts/test/OptimismPortal.t.sol     | 2 +-
 packages/contracts-bedrock/contracts/test/Proxy.t.sol         | 2 +-
 packages/contracts-bedrock/contracts/test/ProxyAdmin.t.sol    | 2 +-
 packages/contracts-bedrock/contracts/test/RLP.t.sol           | 2 +-
 packages/contracts-bedrock/contracts/test/RLPReader.t.sol     | 4 ++--
 packages/contracts-bedrock/contracts/test/RLPWriter.t.sol     | 4 ++--
 .../contracts-bedrock/contracts/test/ResourceMetering.t.sol   | 4 ++--
 packages/contracts-bedrock/contracts/test/Semver.t.sol        | 2 +-
 .../contracts-bedrock/contracts/test/SequencerFeeVault.t.sol  | 2 +-
 52 files changed, 66 insertions(+), 66 deletions(-)

diff --git a/packages/contracts-bedrock/contracts/L1/L1CrossDomainMessenger.sol b/packages/contracts-bedrock/contracts/L1/L1CrossDomainMessenger.sol
index 00724115d..8451215af 100644
--- a/packages/contracts-bedrock/contracts/L1/L1CrossDomainMessenger.sol
+++ b/packages/contracts-bedrock/contracts/L1/L1CrossDomainMessenger.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Predeploys } from "../libraries/Predeploys.sol";
 import { OptimismPortal } from "./OptimismPortal.sol";
diff --git a/packages/contracts-bedrock/contracts/L1/L1StandardBridge.sol b/packages/contracts-bedrock/contracts/L1/L1StandardBridge.sol
index 209172587..34423d377 100644
--- a/packages/contracts-bedrock/contracts/L1/L1StandardBridge.sol
+++ b/packages/contracts-bedrock/contracts/L1/L1StandardBridge.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Predeploys } from "../libraries/Predeploys.sol";
 import { StandardBridge } from "../universal/StandardBridge.sol";
diff --git a/packages/contracts-bedrock/contracts/L1/L2OutputOracle.sol b/packages/contracts-bedrock/contracts/L1/L2OutputOracle.sol
index 325ee53f4..bc5c84afa 100644
--- a/packages/contracts-bedrock/contracts/L1/L2OutputOracle.sol
+++ b/packages/contracts-bedrock/contracts/L1/L2OutputOracle.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import {
     OwnableUpgradeable
diff --git a/packages/contracts-bedrock/contracts/L1/OptimismPortal.sol b/packages/contracts-bedrock/contracts/L1/OptimismPortal.sol
index 1678cd23b..b4d74eb7f 100644
--- a/packages/contracts-bedrock/contracts/L1/OptimismPortal.sol
+++ b/packages/contracts-bedrock/contracts/L1/OptimismPortal.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
 import { ExcessivelySafeCall } from "excessively-safe-call/src/ExcessivelySafeCall.sol";
diff --git a/packages/contracts-bedrock/contracts/L1/ResourceMetering.sol b/packages/contracts-bedrock/contracts/L1/ResourceMetering.sol
index e486b2f55..c4c841e65 100644
--- a/packages/contracts-bedrock/contracts/L1/ResourceMetering.sol
+++ b/packages/contracts-bedrock/contracts/L1/ResourceMetering.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
 import { Math } from "@openzeppelin/contracts/utils/math/Math.sol";
diff --git a/packages/contracts-bedrock/contracts/L2/GasPriceOracle.sol b/packages/contracts-bedrock/contracts/L2/GasPriceOracle.sol
index 10c1a28fd..5d87aa3a0 100644
--- a/packages/contracts-bedrock/contracts/L2/GasPriceOracle.sol
+++ b/packages/contracts-bedrock/contracts/L2/GasPriceOracle.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Semver } from "../universal/Semver.sol";
 import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
diff --git a/packages/contracts-bedrock/contracts/L2/L1Block.sol b/packages/contracts-bedrock/contracts/L2/L1Block.sol
index fed4213f7..0756d34b6 100644
--- a/packages/contracts-bedrock/contracts/L2/L1Block.sol
+++ b/packages/contracts-bedrock/contracts/L2/L1Block.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Semver } from "../universal/Semver.sol";
 
diff --git a/packages/contracts-bedrock/contracts/L2/L2CrossDomainMessenger.sol b/packages/contracts-bedrock/contracts/L2/L2CrossDomainMessenger.sol
index 97c47fc5e..63dc25dc9 100644
--- a/packages/contracts-bedrock/contracts/L2/L2CrossDomainMessenger.sol
+++ b/packages/contracts-bedrock/contracts/L2/L2CrossDomainMessenger.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { AddressAliasHelper } from "../vendor/AddressAliasHelper.sol";
 import { Predeploys } from "../libraries/Predeploys.sol";
diff --git a/packages/contracts-bedrock/contracts/L2/L2StandardBridge.sol b/packages/contracts-bedrock/contracts/L2/L2StandardBridge.sol
index 1ee421b02..85e61cb31 100644
--- a/packages/contracts-bedrock/contracts/L2/L2StandardBridge.sol
+++ b/packages/contracts-bedrock/contracts/L2/L2StandardBridge.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Predeploys } from "../libraries/Predeploys.sol";
 import { StandardBridge } from "../universal/StandardBridge.sol";
diff --git a/packages/contracts-bedrock/contracts/L2/L2ToL1MessagePasser.sol b/packages/contracts-bedrock/contracts/L2/L2ToL1MessagePasser.sol
index 1a65b0623..a477b9d36 100644
--- a/packages/contracts-bedrock/contracts/L2/L2ToL1MessagePasser.sol
+++ b/packages/contracts-bedrock/contracts/L2/L2ToL1MessagePasser.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Hashing } from "../libraries/Hashing.sol";
 import { Burn } from "../libraries/Burn.sol";
diff --git a/packages/contracts-bedrock/contracts/L2/SequencerFeeVault.sol b/packages/contracts-bedrock/contracts/L2/SequencerFeeVault.sol
index b953ac773..3b15ddaf4 100644
--- a/packages/contracts-bedrock/contracts/L2/SequencerFeeVault.sol
+++ b/packages/contracts-bedrock/contracts/L2/SequencerFeeVault.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Semver } from "../universal/Semver.sol";
 import { L2StandardBridge } from "./L2StandardBridge.sol";
diff --git a/packages/contracts-bedrock/contracts/legacy/AddressManager.sol b/packages/contracts-bedrock/contracts/legacy/AddressManager.sol
index 43a97ded9..5fa23ab10 100644
--- a/packages/contracts-bedrock/contracts/legacy/AddressManager.sol
+++ b/packages/contracts-bedrock/contracts/legacy/AddressManager.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
 
diff --git a/packages/contracts-bedrock/contracts/legacy/DeployerWhitelist.sol b/packages/contracts-bedrock/contracts/legacy/DeployerWhitelist.sol
index e1d4998b4..a2969794e 100644
--- a/packages/contracts-bedrock/contracts/legacy/DeployerWhitelist.sol
+++ b/packages/contracts-bedrock/contracts/legacy/DeployerWhitelist.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Semver } from "../universal/Semver.sol";
 
diff --git a/packages/contracts-bedrock/contracts/legacy/L1BlockNumber.sol b/packages/contracts-bedrock/contracts/legacy/L1BlockNumber.sol
index aaea0cce1..b58d2e7f6 100644
--- a/packages/contracts-bedrock/contracts/legacy/L1BlockNumber.sol
+++ b/packages/contracts-bedrock/contracts/legacy/L1BlockNumber.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { L1Block } from "../L2/L1Block.sol";
 import { Predeploys } from "../libraries/Predeploys.sol";
diff --git a/packages/contracts-bedrock/contracts/legacy/L1ChugSplashProxy.sol b/packages/contracts-bedrock/contracts/legacy/L1ChugSplashProxy.sol
index f9b18b360..4a4549da9 100644
--- a/packages/contracts-bedrock/contracts/legacy/L1ChugSplashProxy.sol
+++ b/packages/contracts-bedrock/contracts/legacy/L1ChugSplashProxy.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /**
  * @title IL1ChugSplashDeployer
diff --git a/packages/contracts-bedrock/contracts/legacy/LegacyERC20ETH.sol b/packages/contracts-bedrock/contracts/legacy/LegacyERC20ETH.sol
index 3e23aa2e1..40c7083c8 100644
--- a/packages/contracts-bedrock/contracts/legacy/LegacyERC20ETH.sol
+++ b/packages/contracts-bedrock/contracts/legacy/LegacyERC20ETH.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Predeploys } from "../libraries/Predeploys.sol";
 import { OptimismMintableERC20 } from "../universal/OptimismMintableERC20.sol";
diff --git a/packages/contracts-bedrock/contracts/legacy/ResolvedDelegateProxy.sol b/packages/contracts-bedrock/contracts/legacy/ResolvedDelegateProxy.sol
index 235f9b27b..0271ece8f 100644
--- a/packages/contracts-bedrock/contracts/legacy/ResolvedDelegateProxy.sol
+++ b/packages/contracts-bedrock/contracts/legacy/ResolvedDelegateProxy.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { AddressManager } from "./AddressManager.sol";
 
diff --git a/packages/contracts-bedrock/contracts/libraries/Burn.sol b/packages/contracts-bedrock/contracts/libraries/Burn.sol
index 11e1b28a8..9e3eebbe6 100644
--- a/packages/contracts-bedrock/contracts/libraries/Burn.sol
+++ b/packages/contracts-bedrock/contracts/libraries/Burn.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /**
  * @title Burner
diff --git a/packages/contracts-bedrock/contracts/libraries/Bytes.sol b/packages/contracts-bedrock/contracts/libraries/Bytes.sol
index 0542ba72c..109b2fa48 100644
--- a/packages/contracts-bedrock/contracts/libraries/Bytes.sol
+++ b/packages/contracts-bedrock/contracts/libraries/Bytes.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /**
  * @title Bytes
diff --git a/packages/contracts-bedrock/contracts/libraries/Encoding.sol b/packages/contracts-bedrock/contracts/libraries/Encoding.sol
index 0ab6b5bd0..90773bd77 100644
--- a/packages/contracts-bedrock/contracts/libraries/Encoding.sol
+++ b/packages/contracts-bedrock/contracts/libraries/Encoding.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Hashing } from "./Hashing.sol";
 import { RLPWriter } from "./rlp/RLPWriter.sol";
diff --git a/packages/contracts-bedrock/contracts/libraries/Hashing.sol b/packages/contracts-bedrock/contracts/libraries/Hashing.sol
index 4d53c719c..4d09f4b18 100644
--- a/packages/contracts-bedrock/contracts/libraries/Hashing.sol
+++ b/packages/contracts-bedrock/contracts/libraries/Hashing.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Encoding } from "./Encoding.sol";
 
diff --git a/packages/contracts-bedrock/contracts/libraries/Predeploys.sol b/packages/contracts-bedrock/contracts/libraries/Predeploys.sol
index 78a5e4ab2..9eccdaad2 100644
--- a/packages/contracts-bedrock/contracts/libraries/Predeploys.sol
+++ b/packages/contracts-bedrock/contracts/libraries/Predeploys.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /**
  * @title Predeploys
diff --git a/packages/contracts-bedrock/contracts/libraries/rlp/RLPReader.sol b/packages/contracts-bedrock/contracts/libraries/rlp/RLPReader.sol
index 8bb801537..13424e846 100644
--- a/packages/contracts-bedrock/contracts/libraries/rlp/RLPReader.sol
+++ b/packages/contracts-bedrock/contracts/libraries/rlp/RLPReader.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /**
  * @custom:attribution https://github.com/hamdiallam/Solidity-RLP
diff --git a/packages/contracts-bedrock/contracts/libraries/rlp/RLPWriter.sol b/packages/contracts-bedrock/contracts/libraries/rlp/RLPWriter.sol
index 63dbb051f..7daa03f8b 100644
--- a/packages/contracts-bedrock/contracts/libraries/rlp/RLPWriter.sol
+++ b/packages/contracts-bedrock/contracts/libraries/rlp/RLPWriter.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /**
  * @custom:attribution https://github.com/bakaoh/solidity-rlp-encode
diff --git a/packages/contracts-bedrock/contracts/libraries/trie/MerkleTrie.sol b/packages/contracts-bedrock/contracts/libraries/trie/MerkleTrie.sol
index ae9d37a12..82b811595 100644
--- a/packages/contracts-bedrock/contracts/libraries/trie/MerkleTrie.sol
+++ b/packages/contracts-bedrock/contracts/libraries/trie/MerkleTrie.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Bytes } from "../Bytes.sol";
 import { RLPReader } from "../rlp/RLPReader.sol";
diff --git a/packages/contracts-bedrock/contracts/libraries/trie/SecureMerkleTrie.sol b/packages/contracts-bedrock/contracts/libraries/trie/SecureMerkleTrie.sol
index 31126f9d4..b5b3742c8 100644
--- a/packages/contracts-bedrock/contracts/libraries/trie/SecureMerkleTrie.sol
+++ b/packages/contracts-bedrock/contracts/libraries/trie/SecureMerkleTrie.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /* Library Imports */
 import { MerkleTrie } from "./MerkleTrie.sol";
diff --git a/packages/contracts-bedrock/contracts/test/BenchmarkTest.t.sol b/packages/contracts-bedrock/contracts/test/BenchmarkTest.t.sol
index 1768126fa..774ad57c3 100644
--- a/packages/contracts-bedrock/contracts/test/BenchmarkTest.t.sol
+++ b/packages/contracts-bedrock/contracts/test/BenchmarkTest.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 /* Testing utilities */
 import { Test } from "forge-std/Test.sol";
diff --git a/packages/contracts-bedrock/contracts/test/CommonTest.t.sol b/packages/contracts-bedrock/contracts/test/CommonTest.t.sol
index c3eb91249..b4dadd50b 100644
--- a/packages/contracts-bedrock/contracts/test/CommonTest.t.sol
+++ b/packages/contracts-bedrock/contracts/test/CommonTest.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 /* Testing utilities */
 import { Test } from "forge-std/Test.sol";
diff --git a/packages/contracts-bedrock/contracts/test/DeployerWhitelist.t.sol b/packages/contracts-bedrock/contracts/test/DeployerWhitelist.t.sol
index 251e3cd2d..eed7fe8d3 100644
--- a/packages/contracts-bedrock/contracts/test/DeployerWhitelist.t.sol
+++ b/packages/contracts-bedrock/contracts/test/DeployerWhitelist.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { DeployerWhitelist } from "../legacy/DeployerWhitelist.sol";
diff --git a/packages/contracts-bedrock/contracts/test/Encoding.t.sol b/packages/contracts-bedrock/contracts/test/Encoding.t.sol
index 4907425c6..708961f61 100644
--- a/packages/contracts-bedrock/contracts/test/Encoding.t.sol
+++ b/packages/contracts-bedrock/contracts/test/Encoding.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { Encoding } from "../libraries/Encoding.sol";
diff --git a/packages/contracts-bedrock/contracts/test/GasPriceOracle.t.sol b/packages/contracts-bedrock/contracts/test/GasPriceOracle.t.sol
index eec1c1578..acd8fe32b 100644
--- a/packages/contracts-bedrock/contracts/test/GasPriceOracle.t.sol
+++ b/packages/contracts-bedrock/contracts/test/GasPriceOracle.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { GasPriceOracle } from "../L2/GasPriceOracle.sol";
diff --git a/packages/contracts-bedrock/contracts/test/Hashing.t.sol b/packages/contracts-bedrock/contracts/test/Hashing.t.sol
index 05a67f894..a4f7098bc 100644
--- a/packages/contracts-bedrock/contracts/test/Hashing.t.sol
+++ b/packages/contracts-bedrock/contracts/test/Hashing.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { Hashing } from "../libraries/Hashing.sol";
diff --git a/packages/contracts-bedrock/contracts/test/L1Block.t.sol b/packages/contracts-bedrock/contracts/test/L1Block.t.sol
index 4ba657878..b96e909a3 100644
--- a/packages/contracts-bedrock/contracts/test/L1Block.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L1Block.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { L1Block } from "../L2/L1Block.sol";
diff --git a/packages/contracts-bedrock/contracts/test/L1BlockNumber.t.sol b/packages/contracts-bedrock/contracts/test/L1BlockNumber.t.sol
index 429946644..655e74457 100644
--- a/packages/contracts-bedrock/contracts/test/L1BlockNumber.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L1BlockNumber.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { Test } from "forge-std/Test.sol";
 import { L1Block } from "../L2/L1Block.sol";
diff --git a/packages/contracts-bedrock/contracts/test/L1CrossDomainMessenger.t.sol b/packages/contracts-bedrock/contracts/test/L1CrossDomainMessenger.t.sol
index 870c031bc..973e79be6 100644
--- a/packages/contracts-bedrock/contracts/test/L1CrossDomainMessenger.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L1CrossDomainMessenger.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 /* Testing utilities */
 import { Messenger_Initializer, Reverter, CallerCaller } from "./CommonTest.t.sol";
diff --git a/packages/contracts-bedrock/contracts/test/L1StandardBridge.t.sol b/packages/contracts-bedrock/contracts/test/L1StandardBridge.t.sol
index 0e2ee2063..d6770799c 100644
--- a/packages/contracts-bedrock/contracts/test/L1StandardBridge.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L1StandardBridge.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { Bridge_Initializer } from "./CommonTest.t.sol";
 import { StandardBridge } from "../universal/StandardBridge.sol";
diff --git a/packages/contracts-bedrock/contracts/test/L2CrossDomainMessenger.t.sol b/packages/contracts-bedrock/contracts/test/L2CrossDomainMessenger.t.sol
index 1ec162540..ded2b97f5 100644
--- a/packages/contracts-bedrock/contracts/test/L2CrossDomainMessenger.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L2CrossDomainMessenger.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { Messenger_Initializer, Reverter, CallerCaller } from "./CommonTest.t.sol";
 
diff --git a/packages/contracts-bedrock/contracts/test/L2OutputOracle.t.sol b/packages/contracts-bedrock/contracts/test/L2OutputOracle.t.sol
index 600ada8a1..79f18e5d0 100644
--- a/packages/contracts-bedrock/contracts/test/L2OutputOracle.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L2OutputOracle.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { L2OutputOracle_Initializer, NextImpl } from "./CommonTest.t.sol";
 import { L2OutputOracle } from "../L1/L2OutputOracle.sol";
diff --git a/packages/contracts-bedrock/contracts/test/L2StandardBridge.t.sol b/packages/contracts-bedrock/contracts/test/L2StandardBridge.t.sol
index 50a99e80c..ce11faa39 100644
--- a/packages/contracts-bedrock/contracts/test/L2StandardBridge.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L2StandardBridge.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { Bridge_Initializer } from "./CommonTest.t.sol";
 import { stdStorage, StdStorage } from "forge-std/Test.sol";
diff --git a/packages/contracts-bedrock/contracts/test/L2ToL1MessagePasser.t.sol b/packages/contracts-bedrock/contracts/test/L2ToL1MessagePasser.t.sol
index 7d305a553..906fe346e 100644
--- a/packages/contracts-bedrock/contracts/test/L2ToL1MessagePasser.t.sol
+++ b/packages/contracts-bedrock/contracts/test/L2ToL1MessagePasser.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { L2ToL1MessagePasser } from "../L2/L2ToL1MessagePasser.sol";
diff --git a/packages/contracts-bedrock/contracts/test/LegacyERC20ETH.t.sol b/packages/contracts-bedrock/contracts/test/LegacyERC20ETH.t.sol
index 322e68350..0fb84a028 100644
--- a/packages/contracts-bedrock/contracts/test/LegacyERC20ETH.t.sol
+++ b/packages/contracts-bedrock/contracts/test/LegacyERC20ETH.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { LegacyERC20ETH } from "../legacy/LegacyERC20ETH.sol";
diff --git a/packages/contracts-bedrock/contracts/test/OptimismMintableERC20.t.sol b/packages/contracts-bedrock/contracts/test/OptimismMintableERC20.t.sol
index 20b169d48..77877ebb4 100644
--- a/packages/contracts-bedrock/contracts/test/OptimismMintableERC20.t.sol
+++ b/packages/contracts-bedrock/contracts/test/OptimismMintableERC20.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Bridge_Initializer } from "./CommonTest.t.sol";
 import "../universal/SupportedInterfaces.sol";
diff --git a/packages/contracts-bedrock/contracts/test/OptimismMintableERC20Factory.t.sol b/packages/contracts-bedrock/contracts/test/OptimismMintableERC20Factory.t.sol
index f23341699..9148a03c0 100644
--- a/packages/contracts-bedrock/contracts/test/OptimismMintableERC20Factory.t.sol
+++ b/packages/contracts-bedrock/contracts/test/OptimismMintableERC20Factory.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Bridge_Initializer } from "./CommonTest.t.sol";
 import { LibRLP } from "./RLP.t.sol";
diff --git a/packages/contracts-bedrock/contracts/test/OptimismPortal.t.sol b/packages/contracts-bedrock/contracts/test/OptimismPortal.t.sol
index 38e11153c..243a144c6 100644
--- a/packages/contracts-bedrock/contracts/test/OptimismPortal.t.sol
+++ b/packages/contracts-bedrock/contracts/test/OptimismPortal.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Portal_Initializer, CommonTest, NextImpl } from "./CommonTest.t.sol";
 import { AddressAliasHelper } from "../vendor/AddressAliasHelper.sol";
diff --git a/packages/contracts-bedrock/contracts/test/Proxy.t.sol b/packages/contracts-bedrock/contracts/test/Proxy.t.sol
index a2e1db7b9..4b72bf957 100644
--- a/packages/contracts-bedrock/contracts/test/Proxy.t.sol
+++ b/packages/contracts-bedrock/contracts/test/Proxy.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Test } from "forge-std/Test.sol";
 import { Proxy } from "../universal/Proxy.sol";
diff --git a/packages/contracts-bedrock/contracts/test/ProxyAdmin.t.sol b/packages/contracts-bedrock/contracts/test/ProxyAdmin.t.sol
index e4f4c01f4..f061cded1 100644
--- a/packages/contracts-bedrock/contracts/test/ProxyAdmin.t.sol
+++ b/packages/contracts-bedrock/contracts/test/ProxyAdmin.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Test } from "forge-std/Test.sol";
 import { Proxy } from "../universal/Proxy.sol";
diff --git a/packages/contracts-bedrock/contracts/test/RLP.t.sol b/packages/contracts-bedrock/contracts/test/RLP.t.sol
index 5e8d6fd50..4193624c5 100644
--- a/packages/contracts-bedrock/contracts/test/RLP.t.sol
+++ b/packages/contracts-bedrock/contracts/test/RLP.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: Unlicense
-pragma solidity >=0.8.0;
+pragma solidity ^0.8.0;
 
 import { Bytes32AddressLib } from "@rari-capital/solmate/src/utils/Bytes32AddressLib.sol";
 
diff --git a/packages/contracts-bedrock/contracts/test/RLPReader.t.sol b/packages/contracts-bedrock/contracts/test/RLPReader.t.sol
index 38df4af98..c24f1b19b 100644
--- a/packages/contracts-bedrock/contracts/test/RLPReader.t.sol
+++ b/packages/contracts-bedrock/contracts/test/RLPReader.t.sol
@@ -1,5 +1,5 @@
-// SPDX-License-Identifier: Unlicense
-pragma solidity >=0.8.0;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { RLPReader } from "../libraries/rlp/RLPReader.sol";
 import { CommonTest } from "./CommonTest.t.sol";
diff --git a/packages/contracts-bedrock/contracts/test/RLPWriter.t.sol b/packages/contracts-bedrock/contracts/test/RLPWriter.t.sol
index a8f17feac..426af74b7 100644
--- a/packages/contracts-bedrock/contracts/test/RLPWriter.t.sol
+++ b/packages/contracts-bedrock/contracts/test/RLPWriter.t.sol
@@ -1,5 +1,5 @@
-// SPDX-License-Identifier: Unlicense
-pragma solidity >=0.8.0;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { RLPWriter } from "../libraries/rlp/RLPWriter.sol";
 import { CommonTest } from "./CommonTest.t.sol";
diff --git a/packages/contracts-bedrock/contracts/test/ResourceMetering.t.sol b/packages/contracts-bedrock/contracts/test/ResourceMetering.t.sol
index 179055fd6..1c3bcf5bb 100644
--- a/packages/contracts-bedrock/contracts/test/ResourceMetering.t.sol
+++ b/packages/contracts-bedrock/contracts/test/ResourceMetering.t.sol
@@ -1,5 +1,5 @@
-//SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+// SPDX-License-Identifier: MIT
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { ResourceMetering } from "../L1/ResourceMetering.sol";
diff --git a/packages/contracts-bedrock/contracts/test/Semver.t.sol b/packages/contracts-bedrock/contracts/test/Semver.t.sol
index 0bfcfd4e5..c2042a89a 100644
--- a/packages/contracts-bedrock/contracts/test/Semver.t.sol
+++ b/packages/contracts-bedrock/contracts/test/Semver.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { CommonTest } from "./CommonTest.t.sol";
 import { Semver } from "../universal/Semver.sol";
diff --git a/packages/contracts-bedrock/contracts/test/SequencerFeeVault.t.sol b/packages/contracts-bedrock/contracts/test/SequencerFeeVault.t.sol
index ea9517f12..0687ea562 100644
--- a/packages/contracts-bedrock/contracts/test/SequencerFeeVault.t.sol
+++ b/packages/contracts-bedrock/contracts/test/SequencerFeeVault.t.sol
@@ -1,5 +1,5 @@
 // SPDX-License-Identifier: MIT
-pragma solidity ^0.8.15;
+pragma solidity 0.8.15;
 
 import { Bridge_Initializer } from "./CommonTest.t.sol";
 
-- 
2.23.0