Web IDE only giving "Could not compile" and RAW compile data with any introduced error in a particular code?


One of my codes gives only gives “Could not compile” and RAW compile data when introducing a coding error, no support or pointers from the compiler. With other codes it works as it should.

Below is the RAW data, in this particular case I blocked one of my variables “low” and this is what I get? I could introduce any error and get the same, no support from the compiler but the RAW data .

Could anyone make any sense of below “error data”, obvious misscunduct or are there any known occations when this can happen that I can get help from?

Processing  delta_light_pc1.ino
Checking library blynk...
Checking library AccelStepperSpark...
Installing library blynk 0.4.8 to lib/blynk ...
Installing library AccelStepperSpark 1.5.3 to lib/AccelStepperSpark ...
Library AccelStepperSpark 1.5.3 installed.
Library blynk 0.4.8 installed.
make -C ../modules/photon/user-part all
make[1]: Entering directory '/firmware/modules/photon/user-part'
make -C ../../../user 
make[2]: Entering directory '/firmware/user'
Building cpp file: src/delta_light_pc1.cpp
Invoking: ARM GCC CPP Compiler
mkdir -p ../build/target/user/platform-6-msrc/
arm-none-eabi-gcc -DSTM32_DEVICE -DSTM32F2XX -DPLATFORM_THREADING=1 -DPLATFORM_ID=6 -DPLATFORM_NAME=photon -DUSBD_VID_SPARK=0x2B04 -DUSBD_PID_DFU=0xD006 -DUSBD_PID_CDC=0xC006 -DSPARK_PLATFORM -g3 -gdwarf-2 -Os -mcpu=cortex-m3 -mthumb -DINCLUDE_PLATFORM=1 -DPRODUCT_ID=6 -DPRODUCT_FIRMWARE_VERSION=65535 -DUSE_STDPERIPH_DRIVER -DDFU_BUILD_ENABLE -DSYSTEM_VERSION_STRING=0.6.2 -DRELEASE_BUILD -I./inc -I../wiring/inc -I../system/inc -I../services/inc -I../communication/src -I../hal/inc -I../hal/shared -I../hal/src/photon -I../hal/src/stm32f2xx -I../hal/src/stm32 -I../hal/src/photon/api -I../platform/shared/inc -I../platform/MCU/STM32F2xx/STM32_USB_Host_Driver/inc -I../platform/MCU/STM32F2xx/STM32_StdPeriph_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_OTG_Driver/inc -I../platform/MCU/STM32F2xx/STM32_USB_Device_Driver/inc -I../platform/MCU/STM32F2xx/SPARK_Firmware_Driver/inc -I../platform/MCU/shared/STM32/inc -I../platform/MCU/STM32F2xx/CMSIS/Include -I../platform/MCU/STM32F2xx/CMSIS/Device/ST/Include -I../dynalib/inc -Isrc -I./libraries -Isrc -Isrc -Isrc -Isrc -Ilib/blynk/src -Ilib/AccelStepperSpark/src -I. -MD -MP -MF ../build/target/user/platform-6-msrc/delta_light_pc1.o.d -ffunction-sections -fdata-sections -Wall -Wno-switch -Wno-error=deprecated-declarations -fmessage-length=0 -fno-strict-aliasing -DSPARK=1 -DPARTICLE=1 -DSTART_DFU_FLASHER_SERIAL_SPEED=14400 -DSTART_YMODEM_FLASHER_SERIAL_SPEED=28800 -DSPARK_PLATFORM_NET=BCM9WCDUSI09 -fno-builtin-malloc -fno-builtin-free -fno-builtin-realloc  -DLOG_INCLUDE_SOURCE_INFO=1 -DPARTICLE_USER_MODULE -DUSE_THREADING=0 -DUSE_SPI=SPI -DUSE_CS=A2 -DUSE_SPI=SPI -DUSE_CS=A2 -DUSE_THREADING=0 -DUSER_FIRMWARE_IMAGE_SIZE=0x20000 -DUSER_FIRMWARE_IMAGE_LOCATION=0x80A0000 -DMODULAR_FIRMWARE=1 -DMODULE_VERSION=4 -DMODULE_FUNCTION=5 -DMODULE_INDEX=1 -DMODULE_DEPENDENCY=4,2,108 -D_WINSOCK_H -D_GNU_SOURCE -DLOG_MODULE_CATEGORY="\"app\""  -fno-exceptions -fno-rtti -fcheck-new -std=gnu++11 -c -o ../build/target/user/platform-6-msrc/delta_light_pc1.o src/delta_light_pc1.cpp
delta_light_pc1.ino: In function 'void pose_Dir0()':
delta_light_pc1.ino:257:21: error: 'low' was not declared in this scope
delta_light_pc1.ino: In function 'void pose_Dir60()':
delta_light_pc1.ino:271:21: error: 'low' was not declared in this scope
delta_light_pc1.ino: In function 'void pose_Dir120()':
delta_light_pc1.ino:284:21: error: 'low' was not declared in this scope
delta_light_pc1.ino: In function 'void pose_Dir180()':
delta_light_pc1.ino:298:21: error: 'low' was not declared in this scope
delta_light_pc1.ino: In function 'void pose_Dir240()':
delta_light_pc1.ino:311:21: error: 'low' was not declared in this scope
../build/module.mk:267: recipe for target '../build/target/user/platform-6-msrc/delta_light_pc1.o' failed
make[2]: *** [../build/target/user/platform-6-msrc/delta_light_pc1.o] Error 1
make[2]: Leaving directory '/firmware/user'
../../../build/recurse.mk:11: recipe for target 'user' failed
make[1]: Leaving directory '/firmware/modules/photon/user-part'
make[1]: *** [user] Error 2
../build/recurse.mk:11: recipe for target 'modules/photon/user-part' failed
make: *** [modules/photon/user-part] Error 2


@Duke, it is difficult to advise without seeing the code that is creating the errors. However, given all the errors point to low not being defined, I would venture to say that you used lowercase low instead of uppercase LOW in some digitalWrite() instances.


These do look rather clearly like useful pointers to me

with filename, line number, offending variable and “offence” (not declared) - what more do you expect?

And as such I’d second @peekay123’s suspicion about the case sensitivity of C/C++.


@peekay123, @ScruffR I am very sorry for not being clear enough, I introduced that (low) error on purpose, the problem is that any error introduced to that particular code renders a “non supportive response” in the meaning not nicely formatted with line pointers etc, only the RAW file.

Like this:

Not like this :

and I like the later version a lot better…


I see.
This behaviour seems to be depending on the target system version you are building for.
The more recent versions got some more elaborate/cluttered build outputs which gets hidden away behind the SHOW RAW button for some reason only Particle can answer :wink:
I do understand the more elaborate output for release candidate versions to get more info to stabilise the build, but for official releases the more concise output would clearly be preferable.

@KyleG, any chance to loop in Wojtek or Stefan on this?


@Duke we’ve just deployed a fix for this behaviour with some more improvements! Can you confirm this is gone?


@suda Yes it is gone, thanks!