Force update of function definitions

IDE 2.2.1


void setup()
{
    Serial.begin(115200);
    Serial.println(digitalRead(2));
}

void loop()
{
}

With the board set to a classic Nano I can hover over the digitalRead function name and see
image

Changing the board to a Nano Every, nothing happens when I hover over the same function. Ctrl + F12 shows this
image

I presume that is due to the fact that the index to the functions has not been built. If so, when and under what circumstances does the index get built and how can I force it to happen ?

@ptillisch Per - can you offer any insight into the problem and/or a solution ?

Hi @UKHeliBob. The reason is that the version of the clangd C++ language server currently in use by Arduino IDE doesn't have support for the megaAVR 0-series of microcontrollers, including the ATmega4809 on the Nano Every.

The clangd/LLVM developers have already added support for this family of microcontrollers so the only thing remaining to add support to Arduino IDE is updating to a new version of clangd (including the changes needed in Arduino Lanuguage Server, Arduino IDE and the ClangFormat configuration used by the Arduino IDE Auto Format feature) to get language server support for this microcontrollers in the IDE. This task is tracked here:

Thanks Per

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.