For that you don't need to modify the library - as I said above
All you need to do in order to substitute pins would have been this
// instead of
// LiquidCrystal lcd(5, 4, 3, 2, 1, 0);
// which would be better written as this anyhow
// LiquidCrystal lcd(D5, D4, D3, D2, D1, D0);
// just write
LiquidCrystal lcd(A0, D4, D3, D2, D1, D0);
You cannot change d5
(which is a variable name) to a pin label (A0
- which is a macro for the number literal 10
).
When A0
gets expanded to its value your parameter definition would read uint8_t 10
which is of course not allowed.