Intel® Software Guard Extensions (Intel® SGX)
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.

Using gcc 8.3 with c++14 or c++17 to compile enclave

shmoo
Novice
714 Views

Although the documentation of the Linux Developer Refernence says that the enclave only works with the c++11 standard. I noticed that with gcc 8.3 it is possible to build the enclave in c++14 or c++17 mode.

Of course only as long as you don't use functionalities that are not allowed by the Intel SDK.

Why does this work? Is this allowed or can I introduce an unwanted bug?

0 Kudos
1 Solution
JesusG_Intel
Moderator
651 Views

Hello Shmoo,

 

You are correct. As long as you use only the features allowed by the SGX SDK you should be okay. C++14 and C++17 are incremental improvements. Table 38 of the SGX Developer Reference for Linux lists the supported C++11 language features, which also apply to C++14 and C++17.

However, it is important to keep in mind that when a company says that a configuration is not supported, it means that the company has not tested or validated that configuration. It may or may not work. If it doesn't work, the company may not be able to help.

Sincerely,

Jesus G.

Intel Customer Support

 

View solution in original post

3 Replies
JesusG_Intel
Moderator
652 Views

Hello Shmoo,

 

You are correct. As long as you use only the features allowed by the SGX SDK you should be okay. C++14 and C++17 are incremental improvements. Table 38 of the SGX Developer Reference for Linux lists the supported C++11 language features, which also apply to C++14 and C++17.

However, it is important to keep in mind that when a company says that a configuration is not supported, it means that the company has not tested or validated that configuration. It may or may not work. If it doesn't work, the company may not be able to help.

Sincerely,

Jesus G.

Intel Customer Support

 

shmoo
Novice
640 Views
Thank you for your fast response!
JesusG_Intel
Moderator
426 Views

This thread has been marked as answered and Intel will no longer monitor this thread. If you want a response from Intel in a follow-up question, please open a new thread.


Reply