public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/51897] New: command line option to create a namespace alias
@ 2012-01-19 4:21 danielgutson at gmail dot com
2012-01-22 23:39 ` [Bug c++/51897] " pinskia at gcc dot gnu.org
0 siblings, 1 reply; 2+ messages in thread
From: danielgutson at gmail dot com @ 2012-01-19 4:21 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51897
Bug #: 51897
Summary: command line option to create a namespace alias
Classification: Unclassified
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: enhancement
Priority: P3
Component: c++
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: danielgutson@gmail.com
In C, the compiler driver allows the
-Dxxx=yyy
option, so programs can be parameterized based on such definition.
In C++, we could do likewise with namespaces.
For example:
namespace Version1
{
void f() { /* version 1 implementation */ }
typedef int MyInt;
}
namespace Version2
{
void f() { /* version 2 implementation */ }
typedef long long int MyInt;
}
then, if we could have a namespace alias such as
namespace NM = Version1;
we could happily do:
NM::f();
NM::MyInt myInt;
Therefore, I suggest to add a new command line option to the driver to define
namespace alias, a C++ counterpart of the C macro definition.
For example, we could do
--namespace_alias NM=Version1
or alike when compiling stuff.
Yes, this can also be done with macros, but it's a cleaner preprocessor-free
choice.
^ permalink raw reply [flat|nested] 2+ messages in thread
* [Bug c++/51897] command line option to create a namespace alias
2012-01-19 4:21 [Bug c++/51897] New: command line option to create a namespace alias danielgutson at gmail dot com
@ 2012-01-22 23:39 ` pinskia at gcc dot gnu.org
0 siblings, 0 replies; 2+ messages in thread
From: pinskia at gcc dot gnu.org @ 2012-01-22 23:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51897
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> 2012-01-22 22:22:22 UTC ---
>Yes, this can also be done with macros, but it's a cleaner preprocessor-free
choice.
Not really. The preprocessor is there for a reason and it is simple as:
namespace NN = NNVERSION;
-DNNVERSION=NN1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-01-22 22:22 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-01-19 4:21 [Bug c++/51897] New: command line option to create a namespace alias danielgutson at gmail dot com
2012-01-22 23:39 ` [Bug c++/51897] " pinskia at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).