c-tree.texi: Reformat the manual as a single chapter now included by gcc.texi.
* c-tree.texi: Reformat the manual as a single chapter now included by gcc.texi. * gcc.texi: Include c-tree.texi. Merge all indexes. * Makefile.in (dvi): Add generation for the cppinternals documentation. Added dependencies on fdl.texi and c-tree.texi where appropriate. Use TEXI2DVI instead of custom tex calls. (info): Added dependencies on fdl.texi and c-tree.texi where appropriate. Remove the target c-tree.info. From-SVN: r42660
This commit is contained in:
parent
e250dd710f
commit
df9149ee94
|
@ -1,3 +1,14 @@
|
||||||
|
2001-05-23 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
|
||||||
|
|
||||||
|
* c-tree.texi: Reformat the manual as a single chapter now
|
||||||
|
included by gcc.texi.
|
||||||
|
* gcc.texi: Include c-tree.texi. Merge all indexes.
|
||||||
|
* Makefile.in (dvi): Add generation for the cppinternals
|
||||||
|
documentation. Added dependencies on fdl.texi and c-tree.texi
|
||||||
|
where appropriate. Use TEXI2DVI instead of custom tex calls.
|
||||||
|
(info): Added dependencies on fdl.texi and c-tree.texi where
|
||||||
|
appropriate. Remove the target c-tree.info.
|
||||||
|
|
||||||
2001-05-27 Lars Brinkhoff <lars@nocrew.org>
|
2001-05-27 Lars Brinkhoff <lars@nocrew.org>
|
||||||
|
|
||||||
* combine.c (try_combine): Fix typo in comment.
|
* combine.c (try_combine): Fix typo in comment.
|
||||||
|
|
|
@ -2188,40 +2188,35 @@ stmp-fixproto: fixhdr.ready fixproto stmp-int-hdrs
|
||||||
# Remake the info files.
|
# Remake the info files.
|
||||||
|
|
||||||
doc: $(BUILD_INFO) gccbug
|
doc: $(BUILD_INFO) gccbug
|
||||||
info: $(srcdir)/cpp.info $(srcdir)/gcc.info lang.info $(srcdir)/c-tree.info $(srcdir)/cppinternals.info
|
info: $(srcdir)/cpp.info $(srcdir)/gcc.info lang.info $(srcdir)/cppinternals.info
|
||||||
|
|
||||||
$(srcdir)/cpp.info: $(srcdir)/cpp.texi
|
$(srcdir)/cpp.info: $(srcdir)/cpp.texi
|
||||||
cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o cpp.info cpp.texi
|
cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o cpp.info cpp.texi
|
||||||
|
|
||||||
$(srcdir)/gcc.info: $(srcdir)/gcc.texi $(srcdir)/extend.texi $(srcdir)/install.texi \
|
$(srcdir)/gcc.info: $(srcdir)/gcc.texi $(srcdir)/extend.texi $(srcdir)/install.texi \
|
||||||
$(srcdir)/invoke.texi $(srcdir)/md.texi $(srcdir)/rtl.texi \
|
$(srcdir)/invoke.texi $(srcdir)/md.texi $(srcdir)/c-tree.texi \
|
||||||
$(srcdir)/tm.texi $(srcdir)/gcov.texi $(srcdir)/contrib.texi \
|
$(srcdir)/rtl.texi $(srcdir)/tm.texi $(srcdir)/gcov.texi \
|
||||||
$(srcdir)/objc.texi
|
$(srcdir)/contrib.texi $(srcdir)/objc.texi $(srcdir)/fdl.texi
|
||||||
cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o gcc.info gcc.texi
|
cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o gcc.info gcc.texi
|
||||||
|
|
||||||
$(srcdir)/c-tree.info: $(srcdir)/c-tree.texi
|
|
||||||
cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o c-tree.info \
|
|
||||||
c-tree.texi
|
|
||||||
|
|
||||||
$(srcdir)/cppinternals.info: $(srcdir)/cppinternals.texi
|
$(srcdir)/cppinternals.info: $(srcdir)/cppinternals.texi
|
||||||
cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o cppinternals.info \
|
cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o cppinternals.info \
|
||||||
cppinternals.texi
|
cppinternals.texi
|
||||||
|
|
||||||
dvi: gcc.dvi cpp.dvi lang.dvi
|
dvi: gcc.dvi cpp.dvi lang.dvi cppinternals.dvi
|
||||||
|
|
||||||
# This works with GNU Make's default rule.
|
# This works with GNU Make's default rule.
|
||||||
gcc.dvi: $(srcdir)/gcc.texi $(srcdir)/extend.texi $(srcdir)/install.texi \
|
|
||||||
$(srcdir)/invoke.texi $(srcdir)/md.texi $(srcdir)/rtl.texi \
|
|
||||||
$(srcdir)/tm.texi $(srcdir)/gcov.texi $(srcdir)/contrib.texi \
|
|
||||||
$(srcdir)/objc.texi
|
|
||||||
TEXINPUTS=${texidir}:$(srcdir):$$TEXINPUTS tex gcc.texi
|
|
||||||
texindex gcc.??
|
|
||||||
TEXINPUTS=${texidir}:$(srcdir):$$TEXINPUTS tex gcc.texi
|
|
||||||
|
|
||||||
cpp.dvi: $(srcdir)/cpp.texi
|
cpp.dvi: $(srcdir)/cpp.texi
|
||||||
TEXINPUTS=${texidir}:$(srcdir):$$TEXINPUTS tex cpp.texi
|
$(TEXI2DVI) -I $(srcdir) $(srcdir)/cpp.texi
|
||||||
texindex cpp.??
|
|
||||||
TEXINPUTS=${texidir}:$(srcdir):$$TEXINPUTS tex cpp.texi
|
gcc.dvi: $(srcdir)/gcc.texi $(srcdir)/extend.texi $(srcdir)/install.texi \
|
||||||
|
$(srcdir)/invoke.texi $(srcdir)/md.texi $(srcdir)/c-tree.texi \
|
||||||
|
$(srcdir)/rtl.texi $(srcdir)/tm.texi $(srcdir)/gcov.texi \
|
||||||
|
$(srcdir)/contrib.texi $(srcdir)/objc.texi $(srcdir)/fdl.texi
|
||||||
|
$(TEXI2DVI) -I $(srcdir) $(srcdir)/gcc.texi
|
||||||
|
|
||||||
|
cppinternals.dvi: $(srcdir)/cppinternals.texi
|
||||||
|
$(TEXI2DVI) -I $(srcdir) $(srcdir)/cppinternals.texi
|
||||||
|
|
||||||
generated-manpages: $(srcdir)/gcov.1 $(srcdir)/cpp.1 $(srcdir)/gcc.1
|
generated-manpages: $(srcdir)/gcov.1 $(srcdir)/cpp.1 $(srcdir)/gcc.1
|
||||||
|
|
||||||
|
@ -2375,7 +2370,7 @@ maintainer-clean:
|
||||||
-rm -f c-parse.y c-parse.c c-parse.output TAGS
|
-rm -f c-parse.y c-parse.c c-parse.output TAGS
|
||||||
-rm -f cpp.??s cpp.*aux
|
-rm -f cpp.??s cpp.*aux
|
||||||
-rm -f gcc.??s gcc.*aux
|
-rm -f gcc.??s gcc.*aux
|
||||||
-rm -f $(srcdir)/cpp.info* $(srcdir)/gcc.info* $(srcdir)/c-tree.info*
|
-rm -f $(srcdir)/cpp.info* $(srcdir)/gcc.info*
|
||||||
-rm -f $(srcdir)/cppinternals.info*
|
-rm -f $(srcdir)/cppinternals.info*
|
||||||
-rm -f $(srcdir)/gcov.1 $(srcdir)/cpp.1 $(srcdir)/gcc.1
|
-rm -f $(srcdir)/gcov.1 $(srcdir)/cpp.1 $(srcdir)/gcc.1
|
||||||
#
|
#
|
||||||
|
@ -2547,17 +2542,17 @@ install-driver: installdirs xgcc$(exeext)
|
||||||
# to do the install.
|
# to do the install.
|
||||||
install-info: doc installdirs lang.install-info
|
install-info: doc installdirs lang.install-info
|
||||||
-rm -f $(infodir)/cpp.info* $(infodir)/gcc.info*
|
-rm -f $(infodir)/cpp.info* $(infodir)/gcc.info*
|
||||||
-rm -f $(infodir)/c-tree.info* $(infodir)/cppinternals.info*
|
-rm -f $(infodir)/cppinternals.info*
|
||||||
if [ -f $(srcdir)/gcc.info ]; then \
|
if [ -f $(srcdir)/gcc.info ]; then \
|
||||||
for f in $(srcdir)/cpp.info* $(srcdir)/gcc.info* \
|
for f in $(srcdir)/cpp.info* $(srcdir)/gcc.info* \
|
||||||
$(srcdir)/c-tree.info* $(srcdir)/cppinternals.info*; do \
|
$(srcdir)/cppinternals.info*; do \
|
||||||
realfile=`echo $$f | sed -e 's|.*/\([^/]*\)$$|\1|'`; \
|
realfile=`echo $$f | sed -e 's|.*/\([^/]*\)$$|\1|'`; \
|
||||||
$(INSTALL_DATA) $$f $(infodir)/$$realfile; \
|
$(INSTALL_DATA) $$f $(infodir)/$$realfile; \
|
||||||
done; \
|
done; \
|
||||||
else true; fi
|
else true; fi
|
||||||
-if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
|
-if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
|
||||||
if [ -f $(infodir)/dir ] ; then \
|
if [ -f $(infodir)/dir ] ; then \
|
||||||
for f in cpp.info gcc.info c-tree.info cppinternals.info; do \
|
for f in cpp.info gcc.info cppinternals.info; do \
|
||||||
if [ -f $(infodir)/$$f ]; then \
|
if [ -f $(infodir)/$$f ]; then \
|
||||||
install-info --dir-file=$(infodir)/dir $(infodir)/$$f; \
|
install-info --dir-file=$(infodir)/dir $(infodir)/$$f; \
|
||||||
else true; fi \
|
else true; fi \
|
||||||
|
@ -2565,7 +2560,7 @@ install-info: doc installdirs lang.install-info
|
||||||
else true; fi; \
|
else true; fi; \
|
||||||
else true; fi;
|
else true; fi;
|
||||||
-chmod a-x $(infodir)/cpp.info* $(infodir)/gcc.info*
|
-chmod a-x $(infodir)/cpp.info* $(infodir)/gcc.info*
|
||||||
-chmod a-x $(infodir)/c-tree.info* $(infodir)/cppinternals.info*
|
-chmod a-x $(infodir)/cppinternals.info*
|
||||||
|
|
||||||
# Install the man pages.
|
# Install the man pages.
|
||||||
install-man: installdirs $(GENERATED_MANPAGES) lang.install-man
|
install-man: installdirs $(GENERATED_MANPAGES) lang.install-man
|
||||||
|
@ -2700,7 +2695,7 @@ uninstall: intl.uninstall lang.uninstall $(UNINSTALL_CPP)
|
||||||
-rm -rf $(man1dir)/protoize$(manext)
|
-rm -rf $(man1dir)/protoize$(manext)
|
||||||
-rm -rf $(man1dir)/unprotoize$(manext)
|
-rm -rf $(man1dir)/unprotoize$(manext)
|
||||||
-rm -f $(infodir)/cpp.info* $(infodir)/gcc.info*
|
-rm -f $(infodir)/cpp.info* $(infodir)/gcc.info*
|
||||||
-rm -f $(infodir)/c-tree.info* $(infodir)/cppinternals.info*
|
-rm -f $(infodir)/cppinternals.info*
|
||||||
#
|
#
|
||||||
# These targets are for the dejagnu testsuites. The file site.exp
|
# These targets are for the dejagnu testsuites. The file site.exp
|
||||||
# contains global variables that all the testsuites will use.
|
# contains global variables that all the testsuites will use.
|
||||||
|
|
171
gcc/c-tree.texi
171
gcc/c-tree.texi
|
@ -1,61 +1,18 @@
|
||||||
\input texinfo
|
@c Copyright (c) 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||||
|
@c Free Software Foundation, Inc.
|
||||||
|
@c This is part of the GCC manual.
|
||||||
|
@c For copying conditions, see the file gcc.texi.
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
@c Prologue
|
@c Trees
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@setfilename c-tree.info
|
@node Trees
|
||||||
@settitle C/C++ Internal Representation
|
@chapter Trees: The intermediate representation used by the C and C++ front-ends
|
||||||
@setchapternewpage on
|
@cindex Trees
|
||||||
|
@cindex C/C++ Internal Representation
|
||||||
|
|
||||||
@ifinfo
|
This chapter documents the internal representation used by GCC and C++ to
|
||||||
@dircategory Programming
|
|
||||||
@direntry
|
|
||||||
* c-tree: (c-tree). C/C++ Internal Representation
|
|
||||||
@end direntry
|
|
||||||
This manual documents the internal representation used by GCC to represent
|
|
||||||
C and C++ source programs.
|
|
||||||
|
|
||||||
Copyright (c) 1999, 2000, 2001 Free Software Foundation, Inc.
|
|
||||||
@end ifinfo
|
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
@c Title page
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
@titlepage
|
|
||||||
@title C/C++ Internal Representation
|
|
||||||
@author CodeSourcery, LLC <info@@codesourcery.com>
|
|
||||||
@page
|
|
||||||
@vskip 0pt plus 1filll
|
|
||||||
Copyright @copyright{} 1999, 2000, 2001 Free Software Foundation, Inc.
|
|
||||||
|
|
||||||
Permission is granted to copy, distribute and/or modify this document
|
|
||||||
under the terms of the GNU Free Documentation License, Version 1.1 or
|
|
||||||
any later version published by the Free Software Foundation; with no
|
|
||||||
invariant sections, the Front-Cover texts being (a) (see below), and
|
|
||||||
with the Back-Cover Texts being (b) (see below). A copy of the license
|
|
||||||
is included in the section entitled ``GNU Free Documentation License''.
|
|
||||||
|
|
||||||
(a) The FSF's Front-Cover Text is:
|
|
||||||
|
|
||||||
A GNU Manual
|
|
||||||
|
|
||||||
(b) The FSF's Back-Cover Text is:
|
|
||||||
|
|
||||||
You have freedom to copy and modify this GNU Manual, like GNU
|
|
||||||
software. Copies published by the Free Software Foundation raise
|
|
||||||
funds for GNU development.
|
|
||||||
@end titlepage
|
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
@c Top
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
@node Top
|
|
||||||
@top C/C++ Internal Representation
|
|
||||||
|
|
||||||
This manual documents the internal representation used by GCC and C++ to
|
|
||||||
represent C and C++ source programs. When presented with a C or C++
|
represent C and C++ source programs. When presented with a C or C++
|
||||||
source program, GCC parses the program, performs semantic analysis
|
source program, GCC parses the program, performs semantic analysis
|
||||||
(including the generation of error messages), and then produces the
|
(including the generation of error messages), and then produces the
|
||||||
|
@ -67,10 +24,15 @@ used in the creation of source browsers, intelligent editors, automatic
|
||||||
documentation generators, interpreters, and any other programs needing
|
documentation generators, interpreters, and any other programs needing
|
||||||
the ability to process C or C++ code.
|
the ability to process C or C++ code.
|
||||||
|
|
||||||
This manual explains the internal representation. In particular, this
|
This chapter explains the internal representation. In particular, it
|
||||||
manual documents the internal representation for C and C++ source
|
documents the internal representation for C and C++ source
|
||||||
constructs, and the macros, functions, and variables that can be used to
|
constructs, and the macros, functions, and variables that can be used to
|
||||||
access these constructs.
|
access these constructs. The C++ representation which is largely a superset
|
||||||
|
of the representation used in the C front-end. There is only one
|
||||||
|
construct used in C that does not appear in the C++ front-end and that
|
||||||
|
is the GNU ``nested function'' extension. Many of the macros documented
|
||||||
|
here do not apply in C because the corresponding language constructs do
|
||||||
|
not appear in C.
|
||||||
|
|
||||||
If you are developing a ``back-end'', be it is a code-generator or some
|
If you are developing a ``back-end'', be it is a code-generator or some
|
||||||
other tool, that uses this representation, you may occasionally find
|
other tool, that uses this representation, you may occasionally find
|
||||||
|
@ -84,25 +46,14 @@ yourself writing functions that do not deal directly with your back-end,
|
||||||
but instead might be useful to other people using the GCC front-end, you
|
but instead might be useful to other people using the GCC front-end, you
|
||||||
should submit your patches for inclusion in GCC.
|
should submit your patches for inclusion in GCC.
|
||||||
|
|
||||||
This manual documents the C++ representation which is largely a superset
|
|
||||||
of the representation used in the C front-end. There is only one
|
|
||||||
construct used in C that does not appear in the C++ front-end and that
|
|
||||||
is the GNU ``nested function'' extension. Many of the macros documented
|
|
||||||
here do not apply in C because the corresponding language constructs do
|
|
||||||
not appear in C.
|
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Deficiencies:: Topics net yet covered in this document.
|
* Deficiencies:: Topics net yet covered in this document.
|
||||||
* Overview:: All about @code{tree}s.
|
* Tree overview:: All about @code{tree}s.
|
||||||
* Types:: Fundamental and aggregate types.
|
* Types:: Fundamental and aggregate types.
|
||||||
* Scopes:: Namespaces and classes.
|
* Scopes:: Namespaces and classes.
|
||||||
* Functions:: Overloading, function bodies, and linkage.
|
* Functions:: Overloading, function bodies, and linkage.
|
||||||
* Declarations:: Type declarations and variables.
|
* Declarations:: Type declarations and variables.
|
||||||
* Expressions:: From @code{typeid} to @code{throw}.
|
* Expression trees:: From @code{typeid} to @code{throw}.
|
||||||
* GNU Free Documentation License:: How you can copy and share this manual.
|
|
||||||
* Node Index:: The various types of tree nodes.
|
|
||||||
* Function Index:: Functions and macros described in this manual.
|
|
||||||
* Concept Index:: Index.
|
|
||||||
@end menu
|
@end menu
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
@ -110,7 +61,7 @@ not appear in C.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Deficiencies
|
@node Deficiencies
|
||||||
@chapter Deficiencies
|
@section Deficiencies
|
||||||
|
|
||||||
There are many places in which this document is incomplet and incorrekt.
|
There are many places in which this document is incomplet and incorrekt.
|
||||||
It is, as of yet, only @emph{preliminary} documentation.
|
It is, as of yet, only @emph{preliminary} documentation.
|
||||||
|
@ -119,8 +70,8 @@ It is, as of yet, only @emph{preliminary} documentation.
|
||||||
@c Overview
|
@c Overview
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Overview
|
@node Tree overview
|
||||||
@chapter Overview
|
@section Overview
|
||||||
@cindex tree
|
@cindex tree
|
||||||
@findex TREE_CODE
|
@findex TREE_CODE
|
||||||
|
|
||||||
|
@ -207,7 +158,7 @@ the documentation. Please report these bugs as you would any other
|
||||||
bug.
|
bug.
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Trees:: Macros and functions that can be used with all trees.
|
* Macros and Functions::Macros and functions that can be used with all trees.
|
||||||
* Identifiers:: The names of things.
|
* Identifiers:: The names of things.
|
||||||
* Containers:: Lists and vectors.
|
* Containers:: Lists and vectors.
|
||||||
@end menu
|
@end menu
|
||||||
|
@ -216,8 +167,8 @@ bug.
|
||||||
@c Trees
|
@c Trees
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Trees
|
@node Macros and Functions
|
||||||
@section Trees
|
@subsection Trees
|
||||||
@cindex tree
|
@cindex tree
|
||||||
|
|
||||||
This section is not here yet.
|
This section is not here yet.
|
||||||
|
@ -227,7 +178,7 @@ This section is not here yet.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Identifiers
|
@node Identifiers
|
||||||
@section Identifiers
|
@subsection Identifiers
|
||||||
@cindex identifier
|
@cindex identifier
|
||||||
@cindex name
|
@cindex name
|
||||||
@tindex IDENTIFIER_NODE
|
@tindex IDENTIFIER_NODE
|
||||||
|
@ -273,7 +224,7 @@ operator converts.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Containers
|
@node Containers
|
||||||
@section Containers
|
@subsection Containers
|
||||||
@cindex container
|
@cindex container
|
||||||
@cindex list
|
@cindex list
|
||||||
@cindex vector
|
@cindex vector
|
||||||
|
@ -308,7 +259,7 @@ The elements are indexed from zero.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Types
|
@node Types
|
||||||
@chapter Types
|
@section Types
|
||||||
@cindex type
|
@cindex type
|
||||||
@cindex pointer
|
@cindex pointer
|
||||||
@cindex reference
|
@cindex reference
|
||||||
|
@ -633,7 +584,7 @@ in hand, using @code{same_type_p}.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Scopes
|
@node Scopes
|
||||||
@chapter Scopes
|
@section Scopes
|
||||||
@cindex namespace, class, scope
|
@cindex namespace, class, scope
|
||||||
|
|
||||||
The root of the entire intermediate representation is the variable
|
The root of the entire intermediate representation is the variable
|
||||||
|
@ -657,7 +608,7 @@ keywords.)
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Namespaces
|
@node Namespaces
|
||||||
@section Namespaces
|
@subsection Namespaces
|
||||||
@cindex namespace
|
@cindex namespace
|
||||||
@tindex NAMESPACE_DECL
|
@tindex NAMESPACE_DECL
|
||||||
|
|
||||||
|
@ -749,7 +700,7 @@ This function cannot be used with namespaces that have
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Classes
|
@node Classes
|
||||||
@section Classes
|
@subsection Classes
|
||||||
@cindex class
|
@cindex class
|
||||||
@tindex RECORD_TYPE
|
@tindex RECORD_TYPE
|
||||||
@tindex UNION_TYPE
|
@tindex UNION_TYPE
|
||||||
|
@ -876,7 +827,7 @@ overloaded.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Declarations
|
@node Declarations
|
||||||
@chapter Declarations
|
@section Declarations
|
||||||
@cindex declaration
|
@cindex declaration
|
||||||
@cindex variable
|
@cindex variable
|
||||||
@cindex type declaration
|
@cindex type declaration
|
||||||
|
@ -897,7 +848,7 @@ overloaded.
|
||||||
@findex DECL_ALIGN
|
@findex DECL_ALIGN
|
||||||
@findex DECL_EXTERNAL
|
@findex DECL_EXTERNAL
|
||||||
|
|
||||||
This chapter covers the various kinds of declarations that appear in the
|
This section covers the various kinds of declarations that appear in the
|
||||||
internal representation, except for declarations of functions
|
internal representation, except for declarations of functions
|
||||||
(represented by @code{FUNCTION_DECL} nodes), which are described in
|
(represented by @code{FUNCTION_DECL} nodes), which are described in
|
||||||
@ref{Functions}.
|
@ref{Functions}.
|
||||||
|
@ -1051,7 +1002,7 @@ Back-ends can safely ignore these nodes.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Functions
|
@node Functions
|
||||||
@chapter Functions
|
@section Functions
|
||||||
@cindex function
|
@cindex function
|
||||||
@tindex FUNCTION_DECL
|
@tindex FUNCTION_DECL
|
||||||
@tindex OVERLOAD
|
@tindex OVERLOAD
|
||||||
|
@ -1113,7 +1064,7 @@ function, and the back-end must take appropriate action.
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Function Basics
|
@node Function Basics
|
||||||
@section Function Basics
|
@subsection Function Basics
|
||||||
@cindex constructor
|
@cindex constructor
|
||||||
@cindex destructor
|
@cindex destructor
|
||||||
@cindex copy constructor
|
@cindex copy constructor
|
||||||
|
@ -1316,7 +1267,7 @@ This predicate holds if the function an overloaded
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Function Bodies
|
@node Function Bodies
|
||||||
@section Function Bodies
|
@subsection Function Bodies
|
||||||
@cindex function body
|
@cindex function body
|
||||||
@cindex statements
|
@cindex statements
|
||||||
@tindex ASM_STMT
|
@tindex ASM_STMT
|
||||||
|
@ -1385,7 +1336,7 @@ function. This node will usually be a @code{COMPOUND_STMT} representing
|
||||||
the outermost block of the function, but it may also be a
|
the outermost block of the function, but it may also be a
|
||||||
@code{TRY_BLOCK}, a @code{RETURN_INIT}, or any other valid statement.
|
@code{TRY_BLOCK}, a @code{RETURN_INIT}, or any other valid statement.
|
||||||
|
|
||||||
@subsection Statements
|
@subsubsection Statements
|
||||||
|
|
||||||
There are tree nodes corresponding to all of the source-level statement
|
There are tree nodes corresponding to all of the source-level statement
|
||||||
constructs. These are enumerated here, together with a list of the
|
constructs. These are enumerated here, together with a list of the
|
||||||
|
@ -1710,8 +1661,8 @@ The @code{WHILE_BODY} is the body of the loop.
|
||||||
@c Expressions
|
@c Expressions
|
||||||
@c ---------------------------------------------------------------------
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Expressions
|
@node Expression trees
|
||||||
@chapter Expressions
|
@section Expressions
|
||||||
@cindex expression
|
@cindex expression
|
||||||
@findex TREE_OPERAND
|
@findex TREE_OPERAND
|
||||||
@tindex INTEGER_CST
|
@tindex INTEGER_CST
|
||||||
|
@ -2279,45 +2230,3 @@ given by the third operand to the @code{AGGR_INIT_EXPR}; constructors do
|
||||||
not return a value.
|
not return a value.
|
||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
@c GFDL
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
@include fdl.texi
|
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
@c Node Index
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
@node Node Index
|
|
||||||
@unnumbered Node Index
|
|
||||||
|
|
||||||
@printindex tp
|
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
@c Function Index
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
@node Function Index
|
|
||||||
@unnumbered Function Index
|
|
||||||
|
|
||||||
@printindex fn
|
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
@c Concept Index
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
@node Concept Index
|
|
||||||
@unnumbered Concept Index
|
|
||||||
|
|
||||||
@printindex cp
|
|
||||||
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
@c Epilogue
|
|
||||||
@c ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
@summarycontents
|
|
||||||
@contents
|
|
||||||
@contents
|
|
||||||
@bye
|
|
||||||
|
|
19
gcc/gcc.texi
19
gcc/gcc.texi
|
@ -77,6 +77,10 @@
|
||||||
|
|
||||||
@syncodeindex fn cp
|
@syncodeindex fn cp
|
||||||
@syncodeindex vr cp
|
@syncodeindex vr cp
|
||||||
|
@syncodeindex ky cp
|
||||||
|
@syncodeindex pg cp
|
||||||
|
@syncodeindex tp cp
|
||||||
|
|
||||||
@c %**end of header
|
@c %**end of header
|
||||||
|
|
||||||
@c Use with @@smallbook.
|
@c Use with @@smallbook.
|
||||||
|
@ -242,6 +246,7 @@ bugs. It corresponds to GCC version 3.1.
|
||||||
* Portability:: Goals of GCC's portability features.
|
* Portability:: Goals of GCC's portability features.
|
||||||
* Interface:: Function-call interface of GCC output.
|
* Interface:: Function-call interface of GCC output.
|
||||||
* Passes:: Order of passes, what they do, and what each file is for.
|
* Passes:: Order of passes, what they do, and what each file is for.
|
||||||
|
* Trees:: The source representation used by the C and C++ front-ends.
|
||||||
* RTL:: The intermediate representation that most passes work on.
|
* RTL:: The intermediate representation that most passes work on.
|
||||||
* Machine Desc:: How to write machine description instruction patterns.
|
* Machine Desc:: How to write machine description instruction patterns.
|
||||||
* Target Macros:: How to write the machine description C macros.
|
* Target Macros:: How to write the machine description C macros.
|
||||||
|
@ -2622,7 +2627,6 @@ send to the bug reporting address.
|
||||||
A number of fields in this bug report form are specific to GCC, and are
|
A number of fields in this bug report form are specific to GCC, and are
|
||||||
explained at @uref{http://gcc.gnu.org/gnats.html}.
|
explained at @uref{http://gcc.gnu.org/gnats.html}.
|
||||||
|
|
||||||
|
|
||||||
@node Sending Patches,, gccbug, Bugs
|
@node Sending Patches,, gccbug, Bugs
|
||||||
@section Sending Patches for GCC
|
@section Sending Patches for GCC
|
||||||
|
|
||||||
|
@ -3829,6 +3833,7 @@ from the machine description by the program @file{genattrtab}.@refill
|
||||||
@end ifset
|
@end ifset
|
||||||
|
|
||||||
@ifset INTERNALS
|
@ifset INTERNALS
|
||||||
|
@include c-tree.texi
|
||||||
@include rtl.texi
|
@include rtl.texi
|
||||||
@include md.texi
|
@include md.texi
|
||||||
@include tm.texi
|
@include tm.texi
|
||||||
|
@ -4751,6 +4756,10 @@ consider it more useful to permit linking proprietary applications with the
|
||||||
library. If this is what you want to do, use the GNU Library General
|
library. If this is what you want to do, use the GNU Library General
|
||||||
Public License instead of this License.
|
Public License instead of this License.
|
||||||
|
|
||||||
|
@c ---------------------------------------------------------------------
|
||||||
|
@c GFDL
|
||||||
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@include fdl.texi
|
@include fdl.texi
|
||||||
|
|
||||||
@node Contributors
|
@node Contributors
|
||||||
|
@ -4758,11 +4767,19 @@ Public License instead of this License.
|
||||||
@cindex contributors
|
@cindex contributors
|
||||||
@include contrib.texi
|
@include contrib.texi
|
||||||
|
|
||||||
|
@c ---------------------------------------------------------------------
|
||||||
|
@c Node Index
|
||||||
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@node Index
|
@node Index
|
||||||
@unnumbered Index
|
@unnumbered Index
|
||||||
|
|
||||||
@printindex cp
|
@printindex cp
|
||||||
|
|
||||||
|
@c ---------------------------------------------------------------------
|
||||||
|
@c Epilogue
|
||||||
|
@c ---------------------------------------------------------------------
|
||||||
|
|
||||||
@summarycontents
|
@summarycontents
|
||||||
@contents
|
@contents
|
||||||
@bye
|
@bye
|
||||||
|
|
Loading…
Reference in New Issue