called object is not a function or function pointer

In Windows 10 Pro, after recent updates were installed, I get the compile errors below. It worked fine, until about a week ago. It still compiles fine in my Win7 laptop, which has NOT installed any recent updates. Verbose output and sketches attached.


Arduino: 1.8.9 (Windows 10), Board: “Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)”

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\wiring_analog.c: In function ‘analogRead’:

wiring_analog.c:76:4: error: called object is not a function or function pointer

delayMicroseconds(10)

^

exit status 1
called object is not a function or function pointer

a1_KBMenu.ino (10.4 KB)

a2_tftMenu.ino (4.98 KB)

b_Chambers.ino (2.26 KB)

BAC_Main.ino (9.15 KB)

c_Pumps.ino (1.59 KB)

d_Measurements.ino (13.1 KB)

e_tftDisplay.ino (944 Bytes)

f_Touch.ino (1.44 KB)

p_Parameters.ino (4.42 KB)

y_Testing.ino (2.03 KB)

z_Functions01.ino (3.39 KB)

It worked fine, until about a week ago.

What did you change recently ?

Have you get the same version of the IDE on both PCs and are you compiling for the same target board ?

That's quite strange, considering that the current version of wiring_analog.c, which comes with Arduino IDE 1.8.9 does not make any calls to delayMicroseconds. Inside analogRead around the same line 76 it contains the following

	// without a delay, we seem to read from the wrong channel
	//delay(1);

but it is commented out anyway.

If you open the same wiring_analog.c file on your Win7 machine (the one that does not have this problem), do you see a call to delayMicroseconds in line 76?

Also, when GCC generates a "called object is not a function or function pointer" error, it usually supplements it with a "note: declared here" pointing out the location where the object in question was originally declared. Did you by any change see such note in your output?