Trying to use totalSupply() from IERC20, getting error in Remix

I'm trying to get the totalSupply function from IERC20 working, but I just keep getting an error in remix saying:

call to Test.getTotalSupply errored: VM error: revert.

The transaction has been reverted to the initial state.
Note: The called function should be payable if you send value and the value you send should be less than your current balance.
Debug the transaction to get more information.

This doesn't make any sense to me, the function isnt payable, it shouldn't need to be? I've made the contract as simple as possible to try get to the issue, but it's still here.

:1234: Code to reproduce

pragma solidity ^0.8.1;

import "";

contract Test {
    IERC20 public token;

    function getTotalSupply(address addr) public view returns(uint256) {
        return IERC20(addr).totalSupply();

:computer: Environment

I'm using Remix, with JavaScript VM, solidity version 0.8.1

I used the LINK token at 0x514910771af9ca656af840dff83e8264ecf986ca to try get the total supply of.

If you are using LINK token deployed on ETH you should try with Injected Web3