stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Travis Vitek" <tvi...@roguewave.com>
Subject RE: [Fwd: svn commit: r584880 - in /incubator/stdcxx/trunk/etc/config/src: NO_OBJECT_MANGLING.cpp object_mangling_imp.cpp]
Date Mon, 15 Oct 2007 20:37:10 GMT

The framework will add the new test, but it doesn't have any way to know
to compile and link object_name_mangling_imp.o. Something will need to
be updated for that to work correctly.

Travis 

>-----Original Message-----
>From: Martin Sebor [mailto:sebor@roguewave.com] 
>Sent: Monday, October 15, 2007 1:14 PM
>To: stdcxx-dev@incubator.apache.org
>Subject: [Fwd: svn commit: r584880 - in 
>/incubator/stdcxx/trunk/etc/config/src: NO_OBJECT_MANGLING.cpp 
>object_mangling_imp.cpp]
>
>Hi Farid,
>
>Do I need to do something special in order for the VisualStudio
>infrastructure to pick up this test or is it handled automatically
>like on UNIX? The tricky part that I'm worried about is setting
>LDOPTS in the main test to link it with object_mangling_imp.o.
>
>Travis, do you know this part of the infrastructure yet to be able
>to tell?
>
>Thanks
>Martin
>
>-------- Original Message --------
>Subject: svn commit: r584880 - in 
>/incubator/stdcxx/trunk/etc/config/src: NO_OBJECT_MANGLING.cpp 
>object_mangling_imp.cpp
>Date: Mon, 15 Oct 2007 19:58:39 -0000
>From: sebor@apache.org
>Reply-To: stdcxx-dev@incubator.apache.org
>To: stdcxx-commits@incubator.apache.org
>
>Author: sebor
>Date: Mon Oct 15 12:58:38 2007
>New Revision: 584880
>
>URL: http://svn.apache.org/viewvc?rev=584880&view=rev
>Log:
>2007-10-15  Martin Sebor  <sebor@roguewave.com>
>
>	* NO_OBJECT_MANGLING.cpp: New config test to determine whether
>	namespace-scope objects have their types mangled into their
>	names (as done by MSVC) or not (other compilers).
>	* object_mangling_imp.cpp: Helper file to go with the above.
>
>Added:
>     incubator/stdcxx/trunk/etc/config/src/NO_OBJECT_MANGLING.cpp 
>(with props)
>     incubator/stdcxx/trunk/etc/config/src/object_mangling_imp.cpp 
>(with props)
>
>Added: incubator/stdcxx/trunk/etc/config/src/NO_OBJECT_MANGLING.cpp
>URL: 
>http://svn.apache.org/viewvc/incubator/stdcxx/trunk/etc/config/
>src/NO_OBJECT_MANGLING.cpp?rev=584880&view=auto
>===============================================================
>===============
>--- 
>incubator/stdcxx/trunk/etc/config/src/NO_OBJECT_MANGLING.cpp (added)
>+++ 
>incubator/stdcxx/trunk/etc/config/src/NO_OBJECT_MANGLING.cpp Mon Oct 
>15 12:58:38 2007
>@@ -0,0 +1,37 @@
>+// checking for object name mangling
>+
>+/*************************************************************
>**************
>+ *
>+ * Licensed to the Apache Software  Foundation (ASF) under one or more
>+ * contributor  license agreements.  See  the NOTICE  file distributed
>+ * with  this  work  for  additional information  regarding  copyright
>+ * ownership.   The ASF  licenses this  file to  you under  the Apache
>+ * License, Version  2.0 (the  License); you may  not use  this file
>+ * except in  compliance with the License.   You may obtain  a copy of
>+ * the License at
>+ *
>+ * http://www.apache.org/licenses/LICENSE-2.0
>+ *
>+ * Unless required by applicable law or agreed to in writing, software
>+ * distributed under the  License is distributed on an  "AS IS" BASIS,
>+ * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
>+ * implied.   See  the License  for  the  specific language  governing
>+ * permissions and limitations under the License.
>+ *
>+ * Copyright 1999-2007 Rogue Wave Software, Inc.
>+ *
>+ 
>***************************************************************
>***********/
>+
>+#ifdef _RWSTD_object_mangling_imp
>+  // link with the object file below
>+  // LDOPTS = object_mangling_imp.o
>+#endif   // _RWSTD_object_mangling_imp
>+
>+// declared but not defined here (defined in object_mangling_imp.cpp)
>+extern int declared_int_defined_char_array;
>+
>+int main ()
>+{
>+    // return 0 to indicate that the object has non-zero value
>+    return !declared_int_defined_char_array;
>+}
>
>Propchange: 
>incubator/stdcxx/trunk/etc/config/src/NO_OBJECT_MANGLING.cpp
>---------------------------------------------------------------
>---------------
>     svn:eol-style = native
>
>Propchange: 
>incubator/stdcxx/trunk/etc/config/src/NO_OBJECT_MANGLING.cpp
>---------------------------------------------------------------
>---------------
>     svn:keywords = Id
>
>Added: incubator/stdcxx/trunk/etc/config/src/object_mangling_imp.cpp
>URL: 
>http://svn.apache.org/viewvc/incubator/stdcxx/trunk/etc/config/
>src/object_mangling_imp.cpp?rev=584880&view=auto
>===============================================================
>===============
>--- 
>incubator/stdcxx/trunk/etc/config/src/object_mangling_imp.cpp (added)
>+++ incubator/stdcxx/trunk/etc/config/src/object_mangling_imp.cpp Mon 
>Oct 15 12:58:38 2007
>@@ -0,0 +1,29 @@
>+
>+/*************************************************************
>**************
>+ *
>+ * Licensed to the Apache Software  Foundation (ASF) under one or more
>+ * contributor  license agreements.  See  the NOTICE  file distributed
>+ * with  this  work  for  additional information  regarding  copyright
>+ * ownership.   The ASF  licenses this  file to  you under  the Apache
>+ * License, Version  2.0 (the  License); you may  not use  this file
>+ * except in  compliance with the License.   You may obtain  a copy of
>+ * the License at
>+ *
>+ * http://www.apache.org/licenses/LICENSE-2.0
>+ *
>+ * Unless required by applicable law or agreed to in writing, software
>+ * distributed under the  License is distributed on an  "AS IS" BASIS,
>+ * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
>+ * implied.   See  the License  for  the  specific language  governing
>+ * permissions and limitations under the License.
>+ *
>+ * Copyright 1999-2007 Rogue Wave Software, Inc.
>+ *
>+ 
>***************************************************************
>***********/
>+
>+char declared_int_defined_char_array [sizeof (int)] = {
>+    // define the object to have a different type than its declaration
>+    // in NO_NAME_MANGLING.cpp to detect whether mangled object names
>+    // include type information or not
>+    '\1'
>+};
>
>Propchange: 
>incubator/stdcxx/trunk/etc/config/src/object_mangling_imp.cpp
>---------------------------------------------------------------
>---------------
>     svn:eol-style = native
>
>Propchange: 
>incubator/stdcxx/trunk/etc/config/src/object_mangling_imp.cpp
>---------------------------------------------------------------
>---------------
>     svn:keywords = Id
>
>
>

Mime
View raw message