[GH-ISSUE #576] Compile error with core lib 2.3.0 #479

Closed
opened 2026-02-28 01:25:30 +03:00 by kerem · 13 comments
Owner

Originally created by @sidey79 on GitHub (Mar 26, 2018).
Original GitHub issue: https://github.com/tzapu/WiFiManager/issues/576

Basic Infos

  • I have tested that the issue is present in current development branch (aka latest git).
  • I have searched the issue tracker for a similar issue.
  • If there is a stack dump, I have decoded it.
  • I have filled out all fields below.

Platform

  • Hardware: [ESP-12]
  • Core Version: [2.3.0]
  • Development Env: [|other Visual Studio 2017 with Visual Micro]
  • Operating System: [Windows]

Settings in IDE

  • Module: [Generic ESP8266 Module]
  • Flash Mode: [dio]
  • Flash Size: [1MB]
  • lwip Variant: [unknown]
  • Reset Method: [nodemcu]
  • Flash Frequency: [40Mhz]
  • CPU Frequency: [80Mhz]
  • Upload Using: [SERIAL]
  • Upload Speed: [115200]

Problem Description

Detailed problem description goes here.

The server->on function in core release 2.3.0 is declared with variables from type char* and not with variables from type string as they are used by this lib.

MCVE Sketch

example sketches are affected

Debug Messages

WiFiManager.cpp: In member function void WiFiManager::setupConfigPortal()
 
WiFiManager.cpp: 388:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)
   bind(&WiFiManager::handleRoot, this))
WiFiManager.cpp:388: note  candidates are
 
WiFiManager.h:31: In file included from
WiFiManager.cpp:13: from
ESP8266WebServer.h:79: note  void ESP8266WebServer  on(const char*, ESP8266WebServer  THandlerFunction)
   void on(const char* uri, THandlerFunction handler)
ESP8266WebServer.h:79: note    no known conversion for argument 1 from String to const char*
ESP8266WebServer.h:80: note  void ESP8266WebServer  on(const char*, HTTPMethod, ESP8266WebServer  THandlerFunction)
   void on(const char* uri, HTTPMethod method, THandlerFunction fn)
ESP8266WebServer.h:80: note    candidate expects 3 arguments, 2 provided
ESP8266WebServer.h:81: note  void ESP8266WebServer  on(const char*, HTTPMethod, ESP8266WebServer  THandlerFunction, ESP8266WebServer  THandlerFunction)
   void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn)
ESP8266WebServer.h:81: note    candidate expects 4 arguments, 2 provided```

Originally created by @sidey79 on GitHub (Mar 26, 2018). Original GitHub issue: https://github.com/tzapu/WiFiManager/issues/576 ## Basic Infos - [x] I have tested that the issue is present in current development branch (aka latest git). - [x] I have searched the issue tracker for a similar issue. - [ ] If there is a stack dump, I have decoded it. - [ ] I have filled out all fields below. #### Platform - Hardware: [ESP-12] - Core Version: [2.3.0] - Development Env: [|other Visual Studio 2017 with Visual Micro] - Operating System: [Windows] ### Settings in IDE - Module: [Generic ESP8266 Module] - Flash Mode: [dio] - Flash Size: [1MB] - lwip Variant: [unknown] - Reset Method: [nodemcu] - Flash Frequency: [40Mhz] - CPU Frequency: [80Mhz] - Upload Using: [SERIAL] - Upload Speed: [115200] ### Problem Description Detailed problem description goes here. The server->on function in core release 2.3.0 is declared with variables from type char* and not with variables from type string as they are used by this lib. ### [MCVE](https://stackoverflow.com/help/mcve) Sketch example sketches are affected ### Debug Messages ``` WiFiManager.cpp: In member function void WiFiManager::setupConfigPortal() WiFiManager.cpp: 388:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type) bind(&WiFiManager::handleRoot, this)) WiFiManager.cpp:388: note candidates are WiFiManager.h:31: In file included from WiFiManager.cpp:13: from ESP8266WebServer.h:79: note void ESP8266WebServer on(const char*, ESP8266WebServer THandlerFunction) void on(const char* uri, THandlerFunction handler) ESP8266WebServer.h:79: note no known conversion for argument 1 from String to const char* ESP8266WebServer.h:80: note void ESP8266WebServer on(const char*, HTTPMethod, ESP8266WebServer THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn) ESP8266WebServer.h:80: note candidate expects 3 arguments, 2 provided ESP8266WebServer.h:81: note void ESP8266WebServer on(const char*, HTTPMethod, ESP8266WebServer THandlerFunction, ESP8266WebServer THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn) ESP8266WebServer.h:81: note candidate expects 4 arguments, 2 provided```
kerem 2026-02-28 01:25:30 +03:00
Author
Owner

@tablatronix commented on GitHub (Mar 26, 2018):

Thanks looks like this was changed in 2.4.0
github.com/esp8266/Arduino@4dc4e75216

<!-- gh-comment-id:376318128 --> @tablatronix commented on GitHub (Mar 26, 2018): Thanks looks like this was changed in 2.4.0 https://github.com/esp8266/Arduino/commit/4dc4e75216dfe21ca1bc0ba4eebc2ec94d7b6be5
Author
Owner

@tablatronix commented on GitHub (Mar 27, 2018):

how in the hell does one install 2.3.0 on platformio.hmm

<!-- gh-comment-id:376611029 --> @tablatronix commented on GitHub (Mar 27, 2018): how in the hell does one install 2.3.0 on platformio.hmm
Author
Owner

@sidey79 commented on GitHub (Mar 28, 2018):

Sorry, no idea.

It's boring, that the upstream lib is changed that way.

<!-- gh-comment-id:377030299 --> @sidey79 commented on GitHub (Mar 28, 2018): Sorry, no idea. It's boring, that the upstream lib is changed that way.
Author
Owner

@tablatronix commented on GitHub (Mar 28, 2018):

I will see about making this backward compatible, not sure how I can use strings and char* and use flash strings, ideas prs welcome

<!-- gh-comment-id:377031974 --> @tablatronix commented on GitHub (Mar 28, 2018): I will see about making this backward compatible, not sure how I can use strings and char* and use flash strings, ideas prs welcome
Author
Owner

@sidey79 commented on GitHub (Mar 28, 2018):

The only think i see is, that it is possible to detect the lib version via #ifdef ....

Something like this:
#ifndef ARDUINO_ESP8266_RELEASE_2_3_0

And depending on the version use seperate code.

Not very well but then it is backward compatible

<!-- gh-comment-id:377038158 --> @sidey79 commented on GitHub (Mar 28, 2018): The only think i see is, that it is possible to detect the lib version via #ifdef .... Something like this: `#ifndef ARDUINO_ESP8266_RELEASE_2_3_0` And depending on the version use seperate code. Not very well but then it is backward compatible
Author
Owner

@abhitheawesomecoder commented on GitHub (Aug 28, 2018):

`Arduino: 1.8.5 (Linux), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"

Build options changed, rebuilding all
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp: In member function 'void WiFiManager::setupConfigPortal()':
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:440:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_root), std::bind(&WiFiManager::handleRoot, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:440:78: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:441:84: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(unsigned char), WiFiManager const, bool>::type)'
server->on((String)FPSTR(R_wifi), std::bind(&WiFiManager::handleWifi, this, true));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:441:84: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:442:91: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(unsigned char), WiFiManager const, bool>::type)'
server->on((String)FPSTR(R_wifinoscan), std::bind(&WiFiManager::handleWifi, this, false));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:442:91: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:443:86: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_wifisave), std::bind(&WiFiManager::handleWifiSave, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:443:86: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:444:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_info), std::bind(&WiFiManager::handleInfo, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:444:78: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:445:80: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_param), std::bind(&WiFiManager::handleParam, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:445:80: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:446:88: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_paramsave), std::bind(&WiFiManager::handleParamSave, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:446:88: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:447:82: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_restart), std::bind(&WiFiManager::handleReset, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:447:82: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:448:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_exit), std::bind(&WiFiManager::handleExit, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:448:78: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:449:80: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_close), std::bind(&WiFiManager::handleClose, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:449:80: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:450:87: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(unsigned char), WiFiManager const, bool>::type)'
server->on((String)FPSTR(R_erase), std::bind(&WiFiManager::handleErase, this, false));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:450:87: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:451:86: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::)(), WiFiManager const>::type)'
server->on((String)FPSTR(R_status), std::bind(&WiFiManager::handleWiFiStatus, this));
^
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:451:86: note: candidates are:
In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0,
from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13:
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction)
void on(const char* uri, THandlerFunction handler);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*'
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction)
void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn);
^
/home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp: In member function 'bool WiFiManager::WiFi_scanNetworks(bool, bool)':
/home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:1001:14: error: 'class ESP8266WiFiClass' has no member named 'scanNetworksAsync'
WiFi.scanNetworksAsync(std::bind(&WiFiManager::WiFi_scanComplete,this,_1));
^
exit status 1
Error compiling for board Generic ESP8266 Module.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
`

<!-- gh-comment-id:416546529 --> @abhitheawesomecoder commented on GitHub (Aug 28, 2018): `Arduino: 1.8.5 (Linux), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)" Build options changed, rebuilding all /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp: In member function 'void WiFiManager::setupConfigPortal()': /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:440:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_root), std::bind(&WiFiManager::handleRoot, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:440:78: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:441:84: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(unsigned char), WiFiManager* const, bool>::type)' server->on((String)FPSTR(R_wifi), std::bind(&WiFiManager::handleWifi, this, true)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:441:84: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:442:91: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(unsigned char), WiFiManager* const, bool>::type)' server->on((String)FPSTR(R_wifinoscan), std::bind(&WiFiManager::handleWifi, this, false)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:442:91: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:443:86: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_wifisave), std::bind(&WiFiManager::handleWifiSave, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:443:86: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:444:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_info), std::bind(&WiFiManager::handleInfo, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:444:78: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:445:80: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_param), std::bind(&WiFiManager::handleParam, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:445:80: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:446:88: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_paramsave), std::bind(&WiFiManager::handleParamSave, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:446:88: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:447:82: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_restart), std::bind(&WiFiManager::handleReset, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:447:82: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:448:78: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_exit), std::bind(&WiFiManager::handleExit, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:448:78: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:449:80: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_close), std::bind(&WiFiManager::handleClose, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:449:80: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:450:87: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(unsigned char), WiFiManager* const, bool>::type)' server->on((String)FPSTR(R_erase), std::bind(&WiFiManager::handleErase, this, false)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:450:87: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:451:86: error: no matching function for call to 'ESP8266WebServer::on(String, std::_Bind_helper<false, void (WiFiManager::*)(), WiFiManager* const>::type)' server->on((String)FPSTR(R_status), std::bind(&WiFiManager::handleWiFiStatus, this)); ^ /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:451:86: note: candidates are: In file included from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.h:36:0, from /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:13: /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: void ESP8266WebServer::on(const char*, ESP8266WebServer::THandlerFunction) void on(const char* uri, THandlerFunction handler); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:79:8: note: no known conversion for argument 1 from 'String' to 'const char*' /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:80:8: note: candidate expects 3 arguments, 2 provided /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: void ESP8266WebServer::on(const char*, HTTPMethod, ESP8266WebServer::THandlerFunction, ESP8266WebServer::THandlerFunction) void on(const char* uri, HTTPMethod method, THandlerFunction fn, THandlerFunction ufn); ^ /home/abhishek/.arduino15/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer/src/ESP8266WebServer.h:81:8: note: candidate expects 4 arguments, 2 provided /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp: In member function 'bool WiFiManager::WiFi_scanNetworks(bool, bool)': /home/abhishek/Arduino/libraries/WiFiManager/WiFiManager.cpp:1001:14: error: 'class ESP8266WiFiClass' has no member named 'scanNetworksAsync' WiFi.scanNetworksAsync(std::bind(&WiFiManager::WiFi_scanComplete,this,_1)); ^ exit status 1 Error compiling for board Generic ESP8266 Module. This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences. `
Author
Owner

@tablatronix commented on GitHub (Aug 28, 2018):

Yeah the event func was changed in 2.4 and not backward compatible.

<!-- gh-comment-id:416556930 --> @tablatronix commented on GitHub (Aug 28, 2018): Yeah the event func was changed in 2.4 and not backward compatible.
Author
Owner

@tablatronix commented on GitHub (Sep 7, 2018):

using server->on(String(FPSTR(R_root)).c_str(), for both compatability

<!-- gh-comment-id:419549522 --> @tablatronix commented on GitHub (Sep 7, 2018): using `server->on(String(FPSTR(R_root)).c_str(), ` for both compatability
Author
Owner

@bayazidsustami commented on GitHub (Oct 5, 2018):

it's not work on my pc

<!-- gh-comment-id:427293691 --> @bayazidsustami commented on GitHub (Oct 5, 2018): it's not work on my pc
Author
Owner

@tablatronix commented on GitHub (Oct 5, 2018):

These changes are only in the development branch at the moment.

<!-- gh-comment-id:427367753 --> @tablatronix commented on GitHub (Oct 5, 2018): These changes are only in the development branch at the moment.
Author
Owner

@tablatronix commented on GitHub (Nov 8, 2018):

hotfixed

<!-- gh-comment-id:437104686 --> @tablatronix commented on GitHub (Nov 8, 2018): hotfixed
Author
Owner

@MEHUL95 commented on GitHub (Dec 30, 2018):

using server->on(String(FPSTR(R_root)).c_str(), for both compatability

May I know where to add this line in WifiManager.cpp?

<!-- gh-comment-id:450579944 --> @MEHUL95 commented on GitHub (Dec 30, 2018): > using `server->on(String(FPSTR(R_root)).c_str(), ` for both compatability May I know where to add this line in WifiManager.cpp?
Author
Owner

@tomgillespy commented on GitHub (Feb 11, 2019):

@MEHUL95 if you still need this you see where you need to change it by clicking on the commit hash on the left next to the commit that made the change above. I've just amended the file and it works fine now.

<!-- gh-comment-id:462525532 --> @tomgillespy commented on GitHub (Feb 11, 2019): @MEHUL95 if you still need this you see where you need to change it by clicking on the commit hash on the left next to the commit that made the change above. I've just amended the file and it works fine now.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/WiFiManager#479
No description provided.