summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjanis <janis@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-04 20:28:38 +0000
committerjanis <janis@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-04 20:28:38 +0000
commitebf61cc5557839c9bca01a0c2e24d02fb6004e3a (patch)
tree6e04e3e2a35e0806997ace13248ecfa0b9423ef0 /gcc
parent2f32eff6cc691f23fc3ba3965f53abaa2d0af1b2 (diff)
downloadgcc-ebf61cc5557839c9bca01a0c2e24d02fb6004e3a.tar.gz
2002-09-04 Janis Johnson <janis187@us.ibm.com>
* trouble.texi (Interoperation): Update information about C++ ABI issues. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@56808 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/doc/trouble.texi10
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 32ed90e3334..914fdd408f5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-09-04 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/trouble.texi (Interoperation): Update information about C++ ABI
+ issues.
+
2002-09-04 Jason Thorpe <thorpej@wasabisystems.com>
* config/sparc/t-netbsd64: Disable multilib for now.
diff --git a/gcc/doc/trouble.texi b/gcc/doc/trouble.texi
index 3efca1fc959..446fcccdc4c 100644
--- a/gcc/doc/trouble.texi
+++ b/gcc/doc/trouble.texi
@@ -105,11 +105,13 @@ libraries and debuggers on certain systems.
@itemize @bullet
@item
-G++ does not do name mangling in the same way as other C++
-compilers. This means that object files compiled with one compiler
-cannot be used with another.
+On many platforms, GCC supports a different ABI for C++ than do other
+compilers, so the object files compiled by GCC cannot be used with object
+files generated by another C++ compiler.
-This effect is intentional, to protect you from more subtle problems.
+An area where the difference is most apparent is name mangling. The use
+of different name mangling is intentional, to protect you from more subtle
+problems.
Compilers differ as to many internal details of C++ implementation,
including: how class instances are laid out, how multiple inheritance is
implemented, and how virtual function calls are handled. If the name