-
Bug
-
Resolution: Fixed
-
P2: Important
-
6.10.0
-
None
-
-
2d49156af (dev), 7f9173d8b (6.10)
It seems that something changed with QSemaphore in Qt 6.10.0 for WASM:
- Since 6.10.0 ,QSemaphore is automatically included in my CPP file without an explicit include statement.
So I assume that it is now included in another header file and indirectly included in my project - Even if the QSemaphore class seems to be available the tryAcquire method is not defined and I get the "undefined symbol" error at linking time.
undefined symbol: QSemaphore::tryAcquire(int)
It seems to me that there is a problem there because I would expect that either QSemaphore is not available at all or the methods are defined.
Unfortunately I could not find anything about this change in the release notes or in the documentation.
Note that everything was working fine with Qt 6.9.3 and previous: I was implementing my own dummy QSemaphore class to be used when compiling for WASM and using the original QSemaphore when compiling for Desktop.
But now this doesn't work any longer.
For Gerrit Dashboard: QTBUG-141130 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
684875,3 | QSemaphore: stub out tryAcquire() for no-thread | dev | qt/qtbase | Status: MERGED | +2 | 0 |
685520,2 | QSemaphore: stub out tryAcquire() for no-thread | 6.10 | qt/qtbase | Status: MERGED | +2 | 0 |