Yes: https://en.wikipedia.org/wiki/Mandatory_referendums_in_Switzerland
Switzerland is also a rarity where there isn't quite a separate head of state (eg UK Monarch, German President) but also the head of government role is done by a council of seven, where the majority decision is what happens. So the legislative body writes the law and the council of seven is tasked with executive power to carry out the law.
The modern Swiss constitution (1848) took inspiration from the American constitution (1789), but rather than a consolidated head of state/government like the American President, they wanted to hew even closer to the long-standing ideals of democracy amongst the Cantons, to also avoid concentrating too much power to individuals. Thus, even though the Swiss Federal Council rotates the title of president every year in turn, it confers zero extra powers.
For pointers in particular, this seems like a good starting point: https://sites.cs.ucsb.edu/~mikec/cs16/misc/ptrtut12/pointers.htm
As for compiling for old C/C++ versions, fortunately most compilers can be set to restrict what standard they will compile for. So you could turn the compiler all the way back to something like C99 and it should work, although you'll have to avoid using modern syntax.
That said, with regards to compiling for an old platform, be advised that complete and functional toolchains will be harder to come across. They may not even work anymore, if they haven't been upkept. That's another complexity that you may have to deal with, and it will no doubt be aggravating, than working with a modern platform but limiting yourself to only older C/C++ standards and graphics libraries.
Basically, the starting effort is quite high for developing for older targets. Be certain that this is the direction you want to start with.