Quantcast
Channel: Embarcadero Community - Embarcadero Community
Viewing all articles
Browse latest Browse all 3212

C++ Builder Win64 Access Violation in xlocale

$
0
0

I've create a project which is working fine under OSX. 

I now wish to port this project to Win64.

This project was developed using RAD Studio C++ Builder Berlin Anniversary Edition 10.1 Update 2 Enterprise. Target Win64.

When running the application, an access violation occurs during the main form creation.

Running in Debug, the error occurs in 'xlocale' at line # 2171 which reads as follows:

*(size_t *)&table_size = 1 << CHAR_BIT;// force space reservation

I should also mention that this line is bounded by "#ifdef __BORLANDC__" and "#endif".

Also, during application startup, I am not using streams in the constructor; therefore, I truly don't understand how the compiler is setting up the application for launch.

Doing some googling, I have found this issue appears to persist through multiple versions of C++ Builder. The results tend to be work-arounds that may or may not work.

For kicks and giggles, I tried one of them which appeared the least invasive to my project and the overall installation of RAD Studio. The suggestion was to declare a stream within the module that initializes the application, creates any pre-created forms, and launches the main form. Curiously, this duplicated the error; however, the call stack now referenced the "main" module instead of the "main" form. The error location was exactly the same!

So, is there a problem with the STL files for C++ Builder?

Could some kindly provide a work-around to this situation?

Any help or suggestions will be greatly appreciated.


Viewing all articles
Browse latest Browse all 3212

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>