user137501: The P2SH feature currently in use was introduced to Bitcoin in 2012 with BIP-0016.
It was successfully activated on 2012-04-01 with block 173805.
The BIP turned a particular "hashlock" locking script pattern (OP_HASH160 OP_DATA_20 20-byte-value OP_EQUAL) into a "magical" bytecode pattern which, after authenticating an input's top stack element against the hash then also executes it using Script VM.
The BIP references 1 historical transaction that spent from an output that matched the pattern:

These new rules should only be applied when validating transactions in blocks with timestamps >= 1333238400 (Apr 1 2012) [1]. There are transactions earlier than 1333238400 in the block chain that fail these new validation rules. [2]. Older transactions must be validated under the old rules. (see the Backwards Compatibility section for details).

which made me wonder - are there other, unspent, historical hashlock outputs which may have been made unspendable (if they weren't already) by introduction of the P2SH feature?

user137501: Even before BIP-0016 activation, there were some outputs that matched the P2SH pattern.
Only one of them was spent before activation, and the rest have likely been made unspendable by the BIP-0016 upgrade since spending them would have to satisfy consensus rules not enforced when they were created.
Total amount locked in those outputs was 0.044 BTC.
Table 1: Outputs matching the locking script pattern OP_HASH160 OP_DATA_20 value_20 OP_EQUAL, extracted from blocks 0 to 173805.




Block Height
TXID
Output Index
Satoshi Amount
Locking Script
Status




170052
9C08A4D78931342B37FD5F72900FB9983087E6F46C4A097D8A1F52C74E28EAF6
1
400000
a91419a7d869032368fd1f1e26e5e73a4ad0e474960e87
Spent


170054
B0539A45DE13B3E0403909B8BD1A555B8CBE45FD4E3F3FDA76F3A5F52835C29D
1
400000
a914e8c300c87986efa84c37c0519929019ef86eb5b487
Unspent


170434
D0636198EA55FADEE5B4CCC07C85012DB7D07C2D25790B3AEC770C86617801C0
1
1000000
a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87
Unspent


170442
9AB59E2D4BE16C470160EB9B9A9D9799EAF29AF0461AEA131E748659D806FA1A
0
1000000
a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87
Unspent


170442
658FC92061F1C4125D5CD1034EB8A1F09BFEBD32A988D855EB7EE63689759A21
0
1000000
a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87
Unspent


170556
510B5A44935109E249A704C2900AA9D8303166062E81D2AC852C965B6266DCEE
0
1000000
a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87
Unspent




137501: <p>The P2SH feature currently in use was introduced to Bitcoin in 2012 with <a href="https://github.com/bitcoin/bips/blob/master/bip-0016.mediawiki" rel="noreferrer">BIP-0016</a>.
It was successfully activated on 2012-04-01 with block 173805.</p>
<p>The BIP turned a particular &quot;hashlock&quot; locking script pattern (<code>OP_HASH160 OP_DATA_20 20-byte-value OP_EQUAL</code>) into a &quot;magical&quot; bytecode pattern which, after authenticating an input's top stack element against the hash then also executes it using Script VM.</p>
<p>The BIP references 1 historical transaction that spent from an output that matched the pattern:</p>
<blockquote>
<p>These new rules should only be applied when validating transactions in blocks with timestamps &gt;= 1333238400 (Apr 1 2012) [1]. There are transactions earlier than 1333238400 in the block chain that fail these new validation rules. [2]. Older transactions must be validated under the old rules. (see the Backwards Compatibility section for details).</p>
</blockquote>
<p>which made me wonder - are there other, unspent, historical hashlock outputs which may have been made unspendable (if they weren't already) by introduction of the P2SH feature?</p>
 137501: <p>Even before BIP-0016 activation, there were some outputs that matched the P2SH pattern.
Only one of them was spent before activation, and the rest have likely been made unspendable by the BIP-0016 upgrade since spending them would have to satisfy consensus rules not enforced when they were created.
Total amount locked in those outputs was 0.044 BTC.</p>
<p>Table 1: Outputs matching the locking script pattern <code>OP_HASH160 OP_DATA_20 value_20 OP_EQUAL</code>, extracted from blocks 0 to 173805.</p>
<div class="s-table-container">
<table class="s-table">
<thead>
<tr>
<th>Block Height</th>
<th>TXID</th>
<th>Output Index</th>
<th>Satoshi Amount</th>
<th>Locking Script</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td>170052</td>
<td>9C08A4D78931342B37FD5F72900FB9983087E6F46C4A097D8A1F52C74E28EAF6</td>
<td>1</td>
<td>400000</td>
<td>a91419a7d869032368fd1f1e26e5e73a4ad0e474960e87</td>
<td>Spent</td>
</tr>
<tr>
<td>170054</td>
<td>B0539A45DE13B3E0403909B8BD1A555B8CBE45FD4E3F3FDA76F3A5F52835C29D</td>
<td>1</td>
<td>400000</td>
<td>a914e8c300c87986efa84c37c0519929019ef86eb5b487</td>
<td>Unspent</td>
</tr>
<tr>
<td>170434</td>
<td>D0636198EA55FADEE5B4CCC07C85012DB7D07C2D25790B3AEC770C86617801C0</td>
<td>1</td>
<td>1000000</td>
<td>a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87</td>
<td>Unspent</td>
</tr>
<tr>
<td>170442</td>
<td>9AB59E2D4BE16C470160EB9B9A9D9799EAF29AF0461AEA131E748659D806FA1A</td>
<td>0</td>
<td>1000000</td>
<td>a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87</td>
<td>Unspent</td>
</tr>
<tr>
<td>170442</td>
<td>658FC92061F1C4125D5CD1034EB8A1F09BFEBD32A988D855EB7EE63689759A21</td>
<td>0</td>
<td>1000000</td>
<td>a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87</td>
<td>Unspent</td>
</tr>
<tr>
<td>170556</td>
<td>510B5A44935109E249A704C2900AA9D8303166062E81D2AC852C965B6266DCEE</td>
<td>0</td>
<td>1000000</td>
<td>a91484b8ee2ee2970e4a5c3a18e73a9e251ad5c1df1c87</td>
<td>Unspent</td>
</tr>
</tbody>
</table>
</div>