Предупреждение говорит о том, что у вас есть переменная, использованная только один раз в этом предложении списка предикатов (в данном случае второе предложение).
Почему он предупреждает вас об этом? Потому что чаще всего вы ошиблись именем переменной. Результирующий код, когда вы неправильно пишете переменную, также является допустимой программой пролога, поэтому отладка будет болезненной, если она не предупредит вас.
Если вы не собираетесь использовать эту переменную (X), вы можете использовать вместо нее анонимную переменную.
Чтобы использовать анонимную переменную, вы должны использовать _ как термин вместо имени переменной.
В вашем примере это будет:
list([]).
list([_|L]) :- list(L).