B4R Question ESP32 compile fails with Arduino ESP32 board v3.0.1 selected.

RJB

Active Member
Licensed User
Longtime User
I have working ESP32 software, using the Arduino ESP32 board v1.0.6 selected in the Arduino board manager.
If I update to the latest ESP32 version (3.0.1) in the Arduino board manager the compile fails. Does something else need to be updated?

The log window shows:
B4X:
In file included from E:\........\Objects\src\B4RDefines.h:25,from E:\.........\Objects\src\b4r_inputs.cpp:1:
E:\......\Objects\src\rCore.h:88:25: note: candidate: 'B4R::Object* B4R::Object::wrapNumber(Byte)'
   88 |                 Object* wrapNumber(Byte i);
      |                         ^~~~~~~~~~
E:\......\Objects\src\rCore.h:89:25: note: candidate: 'B4R::Object* B4R::Object::wrapNumber(ULong)'
   89 |                 Object* wrapNumber(ULong i);
      |                         ^~~~~~~~~~
E:\......\Objects\src\rCore.h:90:25: note: candidate: 'B4R::Object* B4R::Object::wrapNumber(Long)'
   90 |                 Object* wrapNumber(Long i);
      |                         ^~~~~~~~~~
E:\.......\Objects\src\rCore.h:94:25: note: candidate: 'B4R::Object* B4R::Object::wrapNumber(Int)'
   94 |                 Object* wrapNumber(Int i);
      |                         ^~~~~~~~~~
E:\........\Objects\src\rCore.h:95:25: note: candidate: 'B4R::Object* B4R::Object::wrapNumber(float)'
   95 |                 Object* wrapNumber(float d);
      |                         ^~~~~~~~~~
E:\........\Objects\src\rCore.h:96:25: note: candidate: 'B4R::Object* B4R::Object::wrapNumber(double)'
   96 |                 Object* wrapNumber(double d);
      |                         ^~~~~~~~~~
 

RJB

Active Member
Licensed User
Longtime User
Arduino 2.3.2 ?
B4R 4.00 ?
Hi,
B4R is 4.00 but Arduino was not.
I've updated Arduino but it still has the same problem (plus some others, presumably because it expects included files to be in different locations so I can probably sort that).
 
Upvote 0

RJB

Active Member
Licensed User
Longtime User
This is caused by code like the following, which worked before updating the esp32 board in Arduino to V3
B4X:
Public Sub Test(A As Int)
    Dim B As Int = 1
    Dim C As Int = 2
    Select A
        Case B    '1
        Case C    '2
        Case (B + C)    '3 - CAUSES ERRORS
        Case Else
    End Select
End Sub
I'm not sure if this should still work so will raise another question to query it.
(https://www.b4x.com/android/forum/t...h-arduino-esp32-board-v3-0-1-selected.161681/)
 
Last edited:
Upvote 0
Top