In file included from C:\Arduino\TinyGPSPlus\KitchenSink\KitchenSink.ino:3:
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:282:26: error: 'Delegate' does not name a type
282 | void onReceive(const Delegate<void(), void*>& handler);
| ^~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:282:34: error: expected ',' or '...' before '<' token
282 | void onReceive(const Delegate<void(), void*>& handler);
| ^
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:289:20: error: 'Delegate' has not been declared
289 | void onReceive(Delegate<void(), void*>&& handler);
| ^~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:289:28: error: expected ',' or '...' before '<' token
289 | void onReceive(Delegate<void(), void*>&& handler);
| ^
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:289:10: error: 'void EspSoftwareSerial::UARTBase::onReceive(int)' cannot be overloaded with 'void EspSoftwareSerial::UARTBase::onReceive(int)'
289 | void onReceive(Delegate<void(), void*>&& handler);
| ^~~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:282:10: note: previous declaration 'void EspSoftwareSerial::UARTBase::onReceive(int)'
282 | void onReceive(const Delegate<void(), void*>& handler);
| ^~~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:328:44: error: expected ';' at end of member declaration
328 | static inline uint32_t IRAM_ATTR ticks() ALWAYS_INLINE_ATTR {
| ^
| ;
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:328:46: error: 'ALWAYS_INLINE_ATTR' does not name a type; did you mean 'FORCE_INLINE_ATTR'?
328 | static inline uint32_t IRAM_ATTR ticks() ALWAYS_INLINE_ATTR {
| ^~~~~~~~~~~~~~~~~~
| FORCE_INLINE_ATTR
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:335:67: error: expected ';' at end of member declaration
335 | static inline uint32_t IRAM_ATTR microsToTicks(uint32_t micros) ALWAYS_INLINE_ATTR {
| ^
| ;
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:335:69: error: 'ALWAYS_INLINE_ATTR' does not name a type; did you mean 'FORCE_INLINE_ATTR'?
335 | static inline uint32_t IRAM_ATTR microsToTicks(uint32_t micros) ALWAYS_INLINE_ATTR {
| ^~~~~~~~~~~~~~~~~~
| FORCE_INLINE_ATTR
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:342:56: error: expected ';' at end of member declaration
342 | static inline uint32_t ticksToMicros(uint32_t ticks) ALWAYS_INLINE_ATTR {
| ^
| ;
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:342:58: error: 'ALWAYS_INLINE_ATTR' does not name a type; did you mean 'FORCE_INLINE_ATTR'?
342 | static inline uint32_t ticksToMicros(uint32_t ticks) ALWAYS_INLINE_ATTR {
| ^~~~~~~~~~~~~~~~~~
| FORCE_INLINE_ATTR
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:379:10: error: 'unique_ptr' in namespace 'std' does not name a template type
379 | std::unique_ptr<circular_queue<uint8_t> > m_buffer;
| ^~~~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:25:1: note: 'std::unique_ptr' is defined in header '<memory>'; did you forget to '#include <memory>'?
24 | #include <circular_queue.h>
+++ |+#include <memory>
25 | #include <Stream.h>
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:380:10: error: 'unique_ptr' in namespace 'std' does not name a template type
380 | std::unique_ptr<circular_queue<uint8_t> > m_parityBuffer;
| ^~~~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:380:5: note: 'std::unique_ptr' is defined in header '<memory>'; did you forget to '#include <memory>'?
380 | std::unique_ptr<circular_queue<uint8_t> > m_parityBuffer;
| ^~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:390:10: error: 'unique_ptr' in namespace 'std' does not name a template type
390 | std::unique_ptr<circular_queue<uint32_t, UARTBase*> > m_isrBuffer;
| ^~~~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:390:5: note: 'std::unique_ptr' is defined in header '<memory>'; did you forget to '#include <memory>'?
390 | std::unique_ptr<circular_queue<uint32_t, UARTBase*> > m_isrBuffer;
| ^~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:391:11: error: 'Delegate' does not name a type
391 | const Delegate<void(uint32_t&&), UARTBase*> m_isrBufferForEachDel { [](UARTBase* self, uint32_t&& isrTick) { self->rxBits(isrTick); }, this };
| ^~~~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:392:10: error: 'atomic' in namespace 'std' does not name a template type
392 | std::atomic<bool> m_isrOverflow { false };
| ^~~~~~
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:25:1: note: 'std::atomic' is defined in header '<atomic>'; did you forget to '#include <atomic>'?
24 | #include <circular_queue.h>
+++ |+#include <atomic>
25 | #include <Stream.h>
c:\Arduino\libraries\espsoftwareserial\src/SoftwareSerial.h:395:5: error: 'Delegate' does not name a type
395 | Delegate<void(), void*> m_rxHandler;
| ^~~~~~~~
exit status 1
Compilation error: exit status 1