This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Making a struct field constant, when this struct is imported to a particular Cpp files
- From: ansis atteka <ansisatteka dot dev at gmail dot com>
- To: gcc at gcc dot gnu dot org
- Date: Thu, 12 Nov 2009 05:44:58 -0800 (PST)
- Subject: Making a struct field constant, when this struct is imported to a particular Cpp files
Greetings,
I have a struct in a header file. And I would like to have some of this
struct member fields to be constant, in case if this header file is included
from some particular Cpp files. Motivation for this is to avoid some silly
programmer errors by accidentally writing to this variable, when developer
is not supposed to do that. I guess that it is possible to catch these
errors already at the compile time with a const keyword.
I already have approach, but I am not quite sure whether it is
safe(especially regarding the compiler optimizations). Below are uplaoded
files.
In this case util.cpp is not allowed to edit S.y contents, while rw.cpp is
allowed to do that. File h.hpp contains the struct which is customized at
the preprocessor execution time by looking at the READONLY define.
If this is not safe, are there any other approaches? I am afraid that
compiler might optimize out something. Assumption is that other threads will
not touch this member.
Regards,
Ansis
http://old.nabble.com/file/p26318895/Makefile Makefile
http://old.nabble.com/file/p26318895/rw.cpp rw.cpp
http://old.nabble.com/file/p26318895/h.hpp h.hpp
http://old.nabble.com/file/p26318895/util.cpp util.cpp
http://old.nabble.com/file/p26318895/util.hpp util.hpp
--
View this message in context: http://old.nabble.com/Making-a-struct-field-constant%2C-when-this-struct-is-imported-to-a-particular-Cpp-files-tp26318895p26318895.html
Sent from the gcc - Dev mailing list archive at Nabble.com.