Yes, they are on the stack. You can see this by looking at this piece of code: it will have to print a message about the destruction 5 times.
struct A { ~A(){ printf( "A destructed\n" ); } }; int main() { { const A anarray [5] = {A()} ; } printf( "inner scope closed\n"); }
xtofl source share