svn commit: r220755 - in head: . contrib/gcc/doc
contrib/gcc/objc contrib/libobjc etc/mtree gnu/lib
gnu/lib/libobjc gnu/usr.bin/cc gnu/usr.bin/cc/cc1obj
gnu/usr.bin/cc/cc_tools gnu/usr.bin/cc/doc s...
Roman Divacky
rdivacky at freebsd.org
Mon Apr 18 07:39:29 UTC 2011
please mark this in src/UPDATING, maybe bump freebsd_version too?
On Sun, Apr 17, 2011 at 09:03:23PM +0000, Dimitry Andric wrote:
> Author: dim
> Date: Sun Apr 17 21:03:23 2011
> New Revision: 220755
> URL: http://svn.freebsd.org/changeset/base/220755
>
> Log:
> Remove libobjc and other Objective-C related components, as these are
> extremely outdated, and not used by anything in the base system.
>
> Silence from: current@
>
> Deleted:
> head/contrib/gcc/doc/objc.texi
> head/contrib/gcc/objc/
> head/contrib/libobjc/
> head/gnu/lib/libobjc/
> head/gnu/usr.bin/cc/cc1obj/
> Modified:
> head/Makefile.inc1
> head/ObsoleteFiles.inc
> head/contrib/gcc/doc/cpp.1
> head/contrib/gcc/doc/cpp.texi
> head/contrib/gcc/doc/cppenv.texi
> head/contrib/gcc/doc/cppinternals.texi
> head/contrib/gcc/doc/cppopts.texi
> head/contrib/gcc/doc/extend.texi
> head/contrib/gcc/doc/frontends.texi
> head/contrib/gcc/doc/gcc.1
> head/contrib/gcc/doc/gcc.texi
> head/contrib/gcc/doc/invoke.texi
> head/contrib/gcc/doc/sourcebuild.texi
> head/contrib/gcc/doc/standards.texi
> head/contrib/gcc/doc/tm.texi
> head/etc/mtree/BSD.include.dist
> head/gnu/lib/Makefile
> head/gnu/usr.bin/cc/Makefile
> head/gnu/usr.bin/cc/cc_tools/Makefile
> head/gnu/usr.bin/cc/doc/Makefile
> head/share/mk/bsd.dep.mk
> head/share/mk/bsd.lib.mk
> head/share/mk/bsd.libnames.mk
> head/share/mk/bsd.own.mk
> head/share/mk/bsd.prog.mk
>
> Modified: head/Makefile.inc1
> ==============================================================================
> --- head/Makefile.inc1 Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/Makefile.inc1 Sun Apr 17 21:03:23 2011 (r220755)
> @@ -306,7 +306,6 @@ LIB32WMAKEENV+= MAKEOBJDIRPREFIX=${OBJTR
> PATH=${TMPPATH} \
> CC="${CC} ${LIB32FLAGS}" \
> CXX="${CXX} ${LIB32FLAGS}" \
> - OBJC="${OBJC} ${LIB32FLAGS}" \
> LIBDIR=/usr/lib32 \
> SHLIBDIR=/usr/lib32
>
>
> Modified: head/ObsoleteFiles.inc
> ==============================================================================
> --- head/ObsoleteFiles.inc Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/ObsoleteFiles.inc Sun Apr 17 21:03:23 2011 (r220755)
> @@ -38,6 +38,26 @@
> # xargs -n1 | sort | uniq -d;
> # done
>
> +# 20110417: removal of Objective-C support
> +OLD_FILES+=usr/include/objc/encoding.h
> +OLD_FILES+=usr/include/objc/hash.h
> +OLD_FILES+=usr/include/objc/NXConstStr.h
> +OLD_FILES+=usr/include/objc/objc-api.h
> +OLD_FILES+=usr/include/objc/objc-decls.h
> +OLD_FILES+=usr/include/objc/objc-list.h
> +OLD_FILES+=usr/include/objc/objc.h
> +OLD_FILES+=usr/include/objc/Object.h
> +OLD_FILES+=usr/include/objc/Protocol.h
> +OLD_FILES+=usr/include/objc/runtime.h
> +OLD_FILES+=usr/include/objc/sarray.h
> +OLD_FILES+=usr/include/objc/thr.h
> +OLD_FILES+=usr/include/objc/typedstream.h
> +OLD_FILES+=usr/lib/libobjc.a
> +OLD_FILES+=usr/lib/libobjc.so
> +OLD_FILES+=usr/lib/libobjc_p.a
> +OLD_FILES+=usr/libexec/cc1obj
> +OLD_LIBS+=usr/lib/libobjc.so.4
> +OLD_DIRS+=usr/include/objc
> # 20110224: sticky.8 -> sticky.7
> OLD_FILES+=usr/share/man/man8/sticky.8.gz
> # 20110220: new clang import which bumps version from 2.8 to 2.9
>
> Modified: head/contrib/gcc/doc/cpp.1
> ==============================================================================
> --- head/contrib/gcc/doc/cpp.1 Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/cpp.1 Sun Apr 17 21:03:23 2011 (r220755)
> @@ -153,14 +153,14 @@ before compilation. It is called a macr
> you to define \fImacros\fR, which are brief abbreviations for longer
> constructs.
> .PP
> -The C preprocessor is intended to be used only with C, \*(C+, and
> -Objective-C source code. In the past, it has been abused as a general
> -text processor. It will choke on input which does not obey C's lexical
> -rules. For example, apostrophes will be interpreted as the beginning of
> -character constants, and cause errors. Also, you cannot rely on it
> -preserving characteristics of the input which are not significant to
> -C\-family languages. If a Makefile is preprocessed, all the hard tabs
> -will be removed, and the Makefile will not work.
> +The C preprocessor is intended to be used only with C and \*(C+ source
> +code. In the past, it has been abused as a general text processor. It
> +will choke on input which does not obey C's lexical rules. For
> +example, apostrophes will be interpreted as the beginning of character
> +constants, and cause errors. Also, you cannot rely on it preserving
> +characteristics of the input which are not significant to C\-family
> +languages. If a Makefile is preprocessed, all the hard tabs will be
> +removed, and the Makefile will not work.
> .PP
> Having said that, you can often get away with using cpp on things which
> are not C. Other Algol-ish programming languages are often safe
> @@ -482,19 +482,16 @@ header files.
> .PD 0
> .IP "\fB\-x c++\fR" 4
> .IX Item "-x c++"
> -.IP "\fB\-x objective-c\fR" 4
> -.IX Item "-x objective-c"
> .IP "\fB\-x assembler-with-cpp\fR" 4
> .IX Item "-x assembler-with-cpp"
> .PD
> -Specify the source language: C, \*(C+, Objective\-C, or assembly. This has
> -nothing to do with standards conformance or extensions; it merely
> -selects which base syntax to expect. If you give none of these options,
> -cpp will deduce the language from the extension of the source file:
> -\&\fB.c\fR, \fB.cc\fR, \fB.m\fR, or \fB.S\fR. Some other common
> -extensions for \*(C+ and assembly are also recognized. If cpp does not
> -recognize the extension, it will treat the file as C; this is the most
> -generic mode.
> +Specify the source language: C, \*(C+, or assembly. This has nothing
> +to do with standards conformance or extensions; it merely selects which
> +base syntax to expect. If you give none of these options, cpp will
> +deduce the language from the extension of the source file: \&\fB.c\fR,
> +\fB.cc\fR, or \fB.S\fR. Some other common extensions for \*(C+ and
> +assembly are also recognized. If cpp does not recognize the extension,
> +it will treat the file as C; this is the most generic mode.
> .Sp
> \&\fINote:\fR Previous versions of cpp accepted a \fB\-lang\fR option
> which selected both the language and the standards conformance level.
> @@ -854,8 +851,6 @@ configuration of \s-1GCC\s0.
> .IX Item "C_INCLUDE_PATH"
> .IP "\fB\s-1CPLUS_INCLUDE_PATH\s0\fR" 4
> .IX Item "CPLUS_INCLUDE_PATH"
> -.IP "\fB\s-1OBJC_INCLUDE_PATH\s0\fR" 4
> -.IX Item "OBJC_INCLUDE_PATH"
> .PD
> Each variable's value is a list of directories separated by a special
> character, much like \fB\s-1PATH\s0\fR, in which to look for header files.
>
> Modified: head/contrib/gcc/doc/cpp.texi
> ==============================================================================
> --- head/contrib/gcc/doc/cpp.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/cpp.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -72,9 +72,9 @@ This manual contains no Invariant Sectio
> @ifnottex
> @node Top
> @top
> -The C preprocessor implements the macro language used to transform C,
> -C++, and Objective-C programs before they are compiled. It can also be
> -useful on its own.
> +The C preprocessor implements the macro language used to transform C
> +and C++ programs before they are compiled. It can also be useful on
> +its own.
>
> @menu
> * Overview::
> @@ -186,14 +186,14 @@ before compilation. It is called a macr
> you to define @dfn{macros}, which are brief abbreviations for longer
> constructs.
>
> -The C preprocessor is intended to be used only with C, C++, and
> -Objective-C source code. In the past, it has been abused as a general
> -text processor. It will choke on input which does not obey C's lexical
> -rules. For example, apostrophes will be interpreted as the beginning of
> -character constants, and cause errors. Also, you cannot rely on it
> -preserving characteristics of the input which are not significant to
> -C-family languages. If a Makefile is preprocessed, all the hard tabs
> -will be removed, and the Makefile will not work.
> +The C preprocessor is intended to be used only with C and C++ source
> +code. In the past, it has been abused as a general text processor. It
> +will choke on input which does not obey C's lexical rules. For
> +example, apostrophes will be interpreted as the beginning of character
> +constants, and cause errors. Also, you cannot rely on it preserving
> +characteristics of the input which are not significant to C-family
> +languages. If a Makefile is preprocessed, all the hard tabs will be
> +removed, and the Makefile will not work.
>
> Having said that, you can often get away with using cpp on things which
> are not C at . Other Algol-ish programming languages are often safe
> @@ -1878,7 +1878,7 @@ the 1999 revision of the C standard. Su
> not yet complete.
>
> This macro is not defined if the @option{-traditional-cpp} option is
> -used, nor when compiling C++ or Objective-C at .
> +used, nor when compiling C++.
>
> @item __STDC_HOSTED__
> This macro is defined, with value 1, if the compiler's target is a
> @@ -1895,11 +1895,6 @@ GNU C++ compiler is not yet fully confor
> instead. It is hoped to complete the implementation of standard C++
> in the near future.
>
> - at item __OBJC__
> -This macro is defined, with value 1, when the Objective-C compiler is in
> -use. You can use @code{__OBJC__} to test whether a header is compiled
> -by a C compiler or a Objective-C compiler.
> -
> @item __ASSEMBLER__
> This macro is defined with value 1 when preprocessing assembly
> language.
> @@ -1921,9 +1916,9 @@ underscores.
> @itemx __GNUC_MINOR__
> @itemx __GNUC_PATCHLEVEL__
> These macros are defined by all GNU compilers that use the C
> -preprocessor: C, C++, and Objective-C at . Their values are the major
> -version, minor version, and patch level of the compiler, as integer
> -constants. For example, GCC 3.2.1 will define @code{__GNUC__} to 3,
> +preprocessor: C and C++. Their values are the major version, minor
> +version, and patch level of the compiler, as integer constants. For
> +example, GCC 3.2.1 will define @code{__GNUC__} to 3,
> @code{__GNUC_MINOR__} to 2, and @code{__GNUC_PATCHLEVEL__} to 1. These
> macros are also defined if you invoke the preprocessor directly.
>
> @@ -2125,12 +2120,6 @@ general, user code should not need to ma
> purpose of this macro is to ease implementation of the C++ runtime
> library provided with G++.
>
> - at item __NEXT_RUNTIME__
> -This macro is defined, with value 1, if (and only if) the NeXT runtime
> -(as in @option{-fnext-runtime}) is in use for Objective-C at . If the GNU
> -runtime is used, this macro is not defined, so that you can use this
> -macro to determine which runtime (NeXT or GNU) is being used.
> -
> @item __LP64__
> @itemx _LP64
> These macros are defined, with value 1, if (and only if) the compilation
> @@ -3433,11 +3422,10 @@ produce no output, rather than a line of
> @node Preprocessor Output
> @chapter Preprocessor Output
>
> -When the C preprocessor is used with the C, C++, or Objective-C
> -compilers, it is integrated into the compiler and communicates a stream
> -of binary tokens directly to the compiler's parser. However, it can
> -also be used in the more conventional standalone mode, where it produces
> -textual output.
> +When the C preprocessor is used with the C or C++ compilers, it is
> +integrated into the compiler and communicates a stream of binary tokens
> +directly to the compiler's parser. However, it can also be used in the
> +more conventional standalone mode, where it produces textual output.
> @c FIXME: Document the library interface.
>
> @cindex output format
> @@ -4053,33 +4041,13 @@ You can also make or cancel assertions u
> @node Obsolete once-only headers
> @subsection Obsolete once-only headers
>
> -CPP supports two more ways of indicating that a header file should be
> -read only once. Neither one is as portable as a wrapper @samp{#ifndef},
> -and we recommend you do not use them in new programs.
> -
> - at findex #import
> -In the Objective-C language, there is a variant of @samp{#include}
> -called @samp{#import} which includes a file, but does so at most once.
> -If you use @samp{#import} instead of @samp{#include}, then you don't
> -need the conditionals inside the header file to prevent multiple
> -inclusion of the contents. GCC permits the use of @samp{#import} in C
> -and C++ as well as Objective-C at . However, it is not in standard C or C++
> -and should therefore not be used by portable programs.
> -
> - at samp{#import} is not a well designed feature. It requires the users of
> -a header file to know that it should only be included once. It is much
> -better for the header file's implementor to write the file so that users
> -don't need to know this. Using a wrapper @samp{#ifndef} accomplishes
> -this goal.
> -
> -In the present implementation, a single use of @samp{#import} will
> -prevent the file from ever being read again, by either @samp{#import} or
> - at samp{#include}. You should not rely on this; do not use both
> - at samp{#import} and @samp{#include} to refer to the same header file.
> -
> -Another way to prevent a header file from being included more than once
> -is with the @samp{#pragma once} directive. If @samp{#pragma once} is
> -seen when scanning a header file, that file will never be read again, no
> +CPP supports one more way of indicating that a header file should be
> +read only once. This is not as portable as a wrapper @samp{#ifndef},
> +and we recommend you do not use it in new programs.
> +
> +A way to prevent a header file from being included more than once is
> +with the @samp{#pragma once} directive. If @samp{#pragma once} is seen
> +when scanning a header file, that file will never be read again, no
> matter what.
>
> @samp{#pragma once} does not have the problems that @samp{#import} does,
>
> Modified: head/contrib/gcc/doc/cppenv.texi
> ==============================================================================
> --- head/contrib/gcc/doc/cppenv.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/cppenv.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -14,9 +14,6 @@
> @item CPATH
> @itemx C_INCLUDE_PATH
> @itemx CPLUS_INCLUDE_PATH
> - at itemx OBJC_INCLUDE_PATH
> - at c Commented out until ObjC++ is part of GCC:
> - at c @itemx OBJCPLUS_INCLUDE_PATH
> Each variable's value is a list of directories separated by a special
> character, much like @env{PATH}, in which to look for header files.
> The special character, @code{PATH_SEPARATOR}, is target-dependent and
>
> Modified: head/contrib/gcc/doc/cppinternals.texi
> ==============================================================================
> --- head/contrib/gcc/doc/cppinternals.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/cppinternals.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -72,10 +72,10 @@ into another language, under the above c
>
> The GNU C preprocessor is
> implemented as a library, @dfn{cpplib}, so it can be easily shared between
> -a stand-alone preprocessor, and a preprocessor integrated with the C,
> -C++ and Objective-C front ends. It is also available for use by other
> -programs, though this is not recommended as its exposed interface has
> -not yet reached a point of reasonable stability.
> +a stand-alone preprocessor, and a preprocessor integrated with the C
> +and C++ front ends. It is also available for use by other programs,
> +though this is not recommended as its exposed interface has not yet
> +reached a point of reasonable stability.
>
> The library has been written to be re-entrant, so that it can be used
> to preprocess many files simultaneously if necessary. It has also been
> @@ -91,7 +91,7 @@ the way they have.
>
> @menu
> * Conventions:: Conventions used in the code.
> -* Lexer:: The combined C, C++ and Objective-C Lexer.
> +* Lexer:: The combined C and C++ Lexer.
> * Hash Nodes:: All identifiers are entered into a hash table.
> * Macro Expansion:: Macro expansion algorithm.
> * Token Spacing:: Spacing and paste avoidance issues.
> @@ -131,12 +131,12 @@ behavior.
>
> @section Overview
> The lexer is contained in the file @file{lex.c}. It is a hand-coded
> -lexer, and not implemented as a state machine. It can understand C, C++
> -and Objective-C source code, and has been extended to allow reasonably
> -successful preprocessing of assembly language. The lexer does not make
> -an initial pass to strip out trigraphs and escaped newlines, but handles
> -them as they are encountered in a single pass of the input file. It
> -returns preprocessing tokens individually, not a line at a time.
> +lexer, and not implemented as a state machine. It can understand C and
> +C++ source code, and has been extended to allow reasonably successful
> +preprocessing of assembly language. The lexer does not make an initial
> +pass to strip out trigraphs and escaped newlines, but handles them as
> +they are encountered in a single pass of the input file. It returns
> +preprocessing tokens individually, not a line at a time.
>
> It is mostly transparent to users of the library, since the library's
> interface for obtaining the next token, @code{cpp_get_token}, takes care
> @@ -303,9 +303,9 @@ don't allow the terminators of header na
> @samp{"} or @samp{>} terminates the header name.
>
> Interpretation of some character sequences depends upon whether we are
> -lexing C, C++ or Objective-C, and on the revision of the standard in
> -force. For example, @samp{::} is a single token in C++, but in C it is
> -two separate @samp{:} tokens and almost certainly a syntax error. Such
> +lexing C or C++, and on the revision of the standard in force. For
> +example, @samp{::} is a single token in C++, but in C it is two
> +separate @samp{:} tokens and almost certainly a syntax error. Such
> cases are handled by @code{_cpp_lex_direct} based upon command-line
> flags stored in the @code{cpp_options} structure.
>
>
> Modified: head/contrib/gcc/doc/cppopts.texi
> ==============================================================================
> --- head/contrib/gcc/doc/cppopts.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/cppopts.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -347,17 +347,15 @@ current directory.
> @end ifclear
> @item -x c
> @itemx -x c++
> - at itemx -x objective-c
> @itemx -x assembler-with-cpp
> @opindex x
> -Specify the source language: C, C++, Objective-C, or assembly. This has
> -nothing to do with standards conformance or extensions; it merely
> -selects which base syntax to expect. If you give none of these options,
> -cpp will deduce the language from the extension of the source file:
> - at samp{.c}, @samp{.cc}, @samp{.m}, or @samp{.S}. Some other common
> -extensions for C++ and assembly are also recognized. If cpp does not
> -recognize the extension, it will treat the file as C; this is the most
> -generic mode.
> +Specify the source language: C, C++, or assembly. This has nothing to
> +do with standards conformance or extensions; it merely selects which
> +base syntax to expect. If you give none of these options, cpp will
> +deduce the language from the extension of the source file: @samp{.c},
> + at samp{.cc}, or @samp{.S}. Some other common extensions for C++ and
> +assembly are also recognized. If cpp does not recognize the extension,
> +it will treat the file as C; this is the most generic mode.
>
> @emph{Note:} Previous versions of cpp accepted a @option{-lang} option
> which selected both the language and the standards conformance level.
>
> Modified: head/contrib/gcc/doc/extend.texi
> ==============================================================================
> --- head/contrib/gcc/doc/extend.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/extend.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -16,9 +16,9 @@ any of these features is used.) To test
> features in conditional compilation, check for a predefined macro
> @code{__GNUC__}, which is always defined under GCC at .
>
> -These extensions are available in C and Objective-C at . Most of them are
> -also available in C++. @xref{C++ Extensions,,Extensions to the
> -C++ Language}, for extensions that apply @emph{only} to C++.
> +These extensions are available in C. Most of them are also available
> +in C++. @xref{C++ Extensions,,Extensions to the C++ Language}, for
> +extensions that apply @emph{only} to C++.
>
> Some features that are in ISO C99 but not C89 or C++ are also, as
> extensions, accepted by GCC in C89 mode and in C++.
> @@ -1716,8 +1716,6 @@ been called. Functions with these attri
> initializing data that will be used implicitly during the execution of
> the program.
>
> -These attributes are not currently implemented for Objective-C at .
> -
> @item deprecated
> @cindex @code{deprecated} attribute.
> The @code{deprecated} attribute results in a warning if the function
> @@ -2605,9 +2603,9 @@ Preprocessing Directives, cpp, The GNU C
>
> This section describes the syntax with which @code{__attribute__} may be
> used, and the constructs to which attribute specifiers bind, for the C
> -language. Some details may vary for C++ and Objective-C at . Because of
> -infelicities in the grammar for attributes, some forms described here
> -may not be successfully parsed in all cases.
> +language. Some details may vary for C++. Because of infelicities in
> +the grammar for attributes, some forms described here may not be
> +successfully parsed in all cases.
>
> There are some problems with the semantics of attributes in C++. For
> example, there are no manglings for attributes, although they may affect
> @@ -9896,9 +9894,8 @@ The Solaris target supports @code{#pragm
> Increase the minimum alignment of each @var{variable} to @var{alignment}.
> This is the same as GCC's @code{aligned} attribute @pxref{Variable
> Attributes}). Macro expansion occurs on the arguments to this pragma
> -when compiling C and Objective-C. It does not currently occur when
> -compiling C++, but this is a bug which may be fixed in a future
> -release.
> +when compiling C. It does not currently occur when compiling C++, but
> +this is a bug which may be fixed in a future release.
>
> @item fini (@var{function} [, @var{function}]...)
> @cindex pragma, fini
>
> Modified: head/contrib/gcc/doc/frontends.texi
> ==============================================================================
> --- head/contrib/gcc/doc/frontends.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/frontends.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -12,13 +12,10 @@
> @cindex Ada
> @cindex Fortran
> @cindex Java
> - at cindex Objective-C
> - at cindex Objective-C++
> @cindex treelang
> GCC stands for ``GNU Compiler Collection''. GCC is an integrated
> distribution of compilers for several major programming languages. These
> -languages currently include C, C++, Objective-C, Objective-C++, Java,
> -Fortran, and Ada.
> +languages currently include C, C++, Java, Fortran, and Ada.
>
> The abbreviation @dfn{GCC} has multiple meanings in common use. The
> current official meaning is ``GNU Compiler Collection'', which refers
> @@ -59,5 +56,4 @@ have been implemented as ``preprocessors
> level language such as C at . None of the compilers included in GCC are
> implemented this way; they all generate machine code directly. This
> sort of preprocessor should not be confused with the @dfn{C
> -preprocessor}, which is an integral feature of the C, C++, Objective-C
> -and Objective-C++ languages.
> +preprocessor}, which is an integral feature of the C and C++ languages.
>
> Modified: head/contrib/gcc/doc/gcc.1
> ==============================================================================
> --- head/contrib/gcc/doc/gcc.1 Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/gcc.1 Sun Apr 17 21:03:23 2011 (r220755)
> @@ -219,22 +219,6 @@ in the following sections.
> \&\-Wno\-non\-template\-friend \-Wold\-style\-cast
> \&\-Woverloaded\-virtual \-Wno\-pmf\-conversions
> \&\-Wsign\-promo\fR
> -.IP "\fIObjective-C and Objective\-\*(C+ Language Options\fR" 4
> -.IX Item "Objective-C and Objective- Language Options"
> -\&\fB\-fconstant\-string\-class=\fR\fIclass-name\fR
> -\&\fB\-fgnu\-runtime \-fnext\-runtime
> -\&\-fno\-nil\-receivers
> -\&\-fobjc\-call\-cxx\-cdtors
> -\&\-fobjc\-direct\-dispatch
> -\&\-fobjc\-exceptions
> -\&\-fobjc\-gc
> -\&\-freplace\-objc\-classes
> -\&\-fzero\-link
> -\&\-gen\-decls
> -\&\-Wassign\-intercept
> -\&\-Wno\-protocol \-Wselector
> -\&\-Wstrict\-selector\-match
> -\&\-Wundeclared\-selector\fR
> .IP "\fILanguage Independent Options\fR" 4
> .IX Item "Language Independent Options"
> \&\fB\-fmessage\-length=\fR\fIn\fR
> @@ -815,29 +799,9 @@ C source code which should not be prepro
> .IP "\fIfile\fR\fB.ii\fR" 4
> .IX Item "file.ii"
> \&\*(C+ source code which should not be preprocessed.
> -.IP "\fIfile\fR\fB.m\fR" 4
> -.IX Item "file.m"
> -Objective-C source code. Note that you must link with the \fIlibobjc\fR
> -library to make an Objective-C program work.
> -.IP "\fIfile\fR\fB.mi\fR" 4
> -.IX Item "file.mi"
> -Objective-C source code which should not be preprocessed.
> -.IP "\fIfile\fR\fB.mm\fR" 4
> -.IX Item "file.mm"
> -.PD 0
> -.IP "\fIfile\fR\fB.M\fR" 4
> -.IX Item "file.M"
> -.PD
> -Objective\-\*(C+ source code. Note that you must link with the \fIlibobjc\fR
> -library to make an Objective\-\*(C+ program work. Note that \fB.M\fR refers
> -to a literal capital M.
> -.IP "\fIfile\fR\fB.mii\fR" 4
> -.IX Item "file.mii"
> -Objective\-\*(C+ source code which should not be preprocessed.
> .IP "\fIfile\fR\fB.h\fR" 4
> .IX Item "file.h"
> -C, \*(C+, Objective-C or Objective\-\*(C+ header file to be turned into a
> -precompiled header.
> +C, or \*(C+ header file to be turned into a precompiled header.
> .IP "\fIfile\fR\fB.cc\fR" 4
> .IX Item "file.cc"
> .PD 0
> @@ -857,16 +821,6 @@ precompiled header.
> \&\*(C+ source code which must be preprocessed. Note that in \fB.cxx\fR,
> the last two letters must both be literally \fBx\fR. Likewise,
> \&\fB.C\fR refers to a literal capital C.
> -.IP "\fIfile\fR\fB.mm\fR" 4
> -.IX Item "file.mm"
> -.PD 0
> -.IP "\fIfile\fR\fB.M\fR" 4
> -.IX Item "file.M"
> -.PD
> -Objective\-\*(C+ source code which must be preprocessed.
> -.IP "\fIfile\fR\fB.mii\fR" 4
> -.IX Item "file.mii"
> -Objective\-\*(C+ source code which should not be preprocessed.
> .IP "\fIfile\fR\fB.hh\fR" 4
> .IX Item "file.hh"
> .PD 0
> @@ -941,8 +895,6 @@ the next \fB\-x\fR option. Possible val
> .Vb 9
> \& c c-header c-cpp-output
> \& c++ c++-header c++-cpp-output
> -\& objective-c objective-c-header objective-c-cpp-output
> -\& objective-c++ objective-c++-header objective-c++-cpp-output
> \& assembler assembler-with-cpp
> \& ada
> \& f95 f95-cpp-input
> @@ -1095,8 +1047,7 @@ languages; or options that are meaningfu
> .Sh "Options Controlling C Dialect"
> .IX Subsection "Options Controlling C Dialect"
> The following options control the dialect of C (or languages derived
> -from C, such as \*(C+, Objective-C and Objective\-\*(C+) that the compiler
> -accepts:
> +from C, such as \*(C+) that the compiler accepts:
> .IP "\fB\-ansi\fR" 4
> .IX Item "-ansi"
> In C mode, support all \s-1ISO\s0 C90 programs. In \*(C+ mode,
> @@ -1840,251 +1791,6 @@ unsignedness, but the standard mandates
> .Sp
> In this example, G++ will synthesize a default \fBA& operator =
> (const A&);\fR, while cfront will use the user-defined \fBoperator =\fR.
> -.Sh "Options Controlling Objective-C and Objective\-\*(C+ Dialects"
> -.IX Subsection "Options Controlling Objective-C and Objective- Dialects"
> -(\s-1NOTE:\s0 This manual does not describe the Objective-C and Objective\-\*(C+
> -languages themselves. See
> -.PP
> -This section describes the command-line options that are only meaningful
> -for Objective-C and Objective\-\*(C+ programs, but you can also use most of
> -the language-independent \s-1GNU\s0 compiler options.
> -For example, you might compile a file \f(CW\*(C`some_class.m\*(C'\fR like this:
> -.PP
> -.Vb 1
> -\& gcc -g -fgnu-runtime -O -c some_class.m
> -.Ve
> -.PP
> -In this example, \fB\-fgnu\-runtime\fR is an option meant only for
> -Objective-C and Objective\-\*(C+ programs; you can use the other options with
> -any language supported by \s-1GCC\s0.
> -.PP
> -Note that since Objective-C is an extension of the C language, Objective-C
> -compilations may also use options specific to the C front-end (e.g.,
> -\&\fB\-Wtraditional\fR). Similarly, Objective\-\*(C+ compilations may use
> -\&\*(C+\-specific options (e.g., \fB\-Wabi\fR).
> -.PP
> -Here is a list of options that are \fIonly\fR for compiling Objective-C
> -and Objective\-\*(C+ programs:
> -.IP "\fB\-fconstant\-string\-class=\fR\fIclass-name\fR" 4
> -.IX Item "-fconstant-string-class=class-name"
> -Use \fIclass-name\fR as the name of the class to instantiate for each
> -literal string specified with the syntax \f(CW\*(C`@"..."\*(C'\fR. The default
> -class name is \f(CW\*(C`NXConstantString\*(C'\fR if the \s-1GNU\s0 runtime is being used, and
> -\&\f(CW\*(C`NSConstantString\*(C'\fR if the NeXT runtime is being used (see below). The
> -\&\fB\-fconstant\-cfstrings\fR option, if also present, will override the
> -\&\fB\-fconstant\-string\-class\fR setting and cause \f(CW\*(C`@"..."\*(C'\fR literals
> -to be laid out as constant CoreFoundation strings.
> -.IP "\fB\-fgnu\-runtime\fR" 4
> -.IX Item "-fgnu-runtime"
> -Generate object code compatible with the standard \s-1GNU\s0 Objective-C
> -runtime. This is the default for most types of systems.
> -.IP "\fB\-fnext\-runtime\fR" 4
> -.IX Item "-fnext-runtime"
> -Generate output compatible with the NeXT runtime. This is the default
> -for NeXT-based systems, including Darwin and Mac \s-1OS\s0 X. The macro
> -\&\f(CW\*(C`_\|_NEXT_RUNTIME_\|_\*(C'\fR is predefined if (and only if) this option is
> -used.
> -.IP "\fB\-fno\-nil\-receivers\fR" 4
> -.IX Item "-fno-nil-receivers"
> -Assume that all Objective-C message dispatches (e.g.,
> -\&\f(CW\*(C`[receiver message:arg]\*(C'\fR) in this translation unit ensure that the receiver
> -is not \f(CW\*(C`nil\*(C'\fR. This allows for more efficient entry points in the runtime
> -to be used. Currently, this option is only available in conjunction with
> -the NeXT runtime on Mac \s-1OS\s0 X 10.3 and later.
> -.IP "\fB\-fobjc\-call\-cxx\-cdtors\fR" 4
> -.IX Item "-fobjc-call-cxx-cdtors"
> -For each Objective-C class, check if any of its instance variables is a
> -\&\*(C+ object with a non-trivial default constructor. If so, synthesize a
> -special \f(CW\*(C`\- (id) .cxx_construct\*(C'\fR instance method that will run
> -non-trivial default constructors on any such instance variables, in order,
> -and then return \f(CW\*(C`self\*(C'\fR. Similarly, check if any instance variable
> -is a \*(C+ object with a non-trivial destructor, and if so, synthesize a
> -special \f(CW\*(C`\- (void) .cxx_destruct\*(C'\fR method that will run
> -all such default destructors, in reverse order.
> -.Sp
> -The \f(CW\*(C`\- (id) .cxx_construct\*(C'\fR and/or \f(CW\*(C`\- (void) .cxx_destruct\*(C'\fR methods
> -thusly generated will only operate on instance variables declared in the
> -current Objective-C class, and not those inherited from superclasses. It
> -is the responsibility of the Objective-C runtime to invoke all such methods
> -in an object's inheritance hierarchy. The \f(CW\*(C`\- (id) .cxx_construct\*(C'\fR methods
> -will be invoked by the runtime immediately after a new object
> -instance is allocated; the \f(CW\*(C`\- (void) .cxx_destruct\*(C'\fR methods will
> -be invoked immediately before the runtime deallocates an object instance.
> -.Sp
> -As of this writing, only the NeXT runtime on Mac \s-1OS\s0 X 10.4 and later has
> -support for invoking the \f(CW\*(C`\- (id) .cxx_construct\*(C'\fR and
> -\&\f(CW\*(C`\- (void) .cxx_destruct\*(C'\fR methods.
> -.IP "\fB\-fobjc\-direct\-dispatch\fR" 4
> -.IX Item "-fobjc-direct-dispatch"
> -Allow fast jumps to the message dispatcher. On Darwin this is
> -accomplished via the comm page.
> -.IP "\fB\-fobjc\-exceptions\fR" 4
> -.IX Item "-fobjc-exceptions"
> -Enable syntactic support for structured exception handling in Objective\-C,
> -similar to what is offered by \*(C+ and Java. This option is
> -unavailable in conjunction with the NeXT runtime on Mac \s-1OS\s0 X 10.2 and
> -earlier.
> -.Sp
> -.Vb 23
> -\& @try {
> -\& ...
> -\& @throw expr;
> -\& ...
> -\& }
> -\& @catch (AnObjCClass *exc) {
> -\& ...
> -\& @throw expr;
> -\& ...
> -\& @throw;
> -\& ...
> -\& }
> -\& @catch (AnotherClass *exc) {
> -\& ...
> -\& }
> -\& @catch (id allOthers) {
> -\& ...
> -\& }
> -\& @finally {
> -\& ...
> -\& @throw expr;
> -\& ...
> -\& }
> -.Ve
> -.Sp
> -The \f(CW at throw\fR statement may appear anywhere in an Objective-C or
> -Objective\-\*(C+ program; when used inside of a \f(CW at catch\fR block, the
> -\&\f(CW at throw\fR may appear without an argument (as shown above), in which case
> -the object caught by the \f(CW at catch\fR will be rethrown.
> -.Sp
> -Note that only (pointers to) Objective-C objects may be thrown and
> -caught using this scheme. When an object is thrown, it will be caught
> -by the nearest \f(CW at catch\fR clause capable of handling objects of that type,
> -analogously to how \f(CW\*(C`catch\*(C'\fR blocks work in \*(C+ and Java. A
> -\&\f(CW\*(C`@catch(id ...)\*(C'\fR clause (as shown above) may also be provided to catch
> -any and all Objective-C exceptions not caught by previous \f(CW at catch\fR
> -clauses (if any).
> -.Sp
> -The \f(CW at finally\fR clause, if present, will be executed upon exit from the
> -immediately preceding \f(CW\*(C`@try ... @catch\*(C'\fR section. This will happen
> -regardless of whether any exceptions are thrown, caught or rethrown
> -inside the \f(CW\*(C`@try ... @catch\*(C'\fR section, analogously to the behavior
> -of the \f(CW\*(C`finally\*(C'\fR clause in Java.
> -.Sp
> -There are several caveats to using the new exception mechanism:
> -.RS 4
> -.IP "*" 4
> -Although currently designed to be binary compatible with \f(CW\*(C`NS_HANDLER\*(C'\fR\-style
> -idioms provided by the \f(CW\*(C`NSException\*(C'\fR class, the new
> -exceptions can only be used on Mac \s-1OS\s0 X 10.3 (Panther) and later
> -systems, due to additional functionality needed in the (NeXT) Objective-C
> -runtime.
> -.IP "*" 4
> -As mentioned above, the new exceptions do not support handling
> -types other than Objective-C objects. Furthermore, when used from
> -Objective\-\*(C+, the Objective-C exception model does not interoperate with \*(C+
> -exceptions at this time. This means you cannot \f(CW at throw\fR an exception
> -from Objective-C and \f(CW\*(C`catch\*(C'\fR it in \*(C+, or vice versa
> -(i.e., \f(CW\*(C`throw ... @catch\*(C'\fR).
> -.RE
> -.RS 4
> -.Sp
> -The \fB\-fobjc\-exceptions\fR switch also enables the use of synchronization
> -blocks for thread-safe execution:
> -.Sp
> -.Vb 3
> -\& @synchronized (ObjCClass *guard) {
> -\& ...
> -\& }
> -.Ve
> -.Sp
> -Upon entering the \f(CW at synchronized\fR block, a thread of execution shall
> -first check whether a lock has been placed on the corresponding \f(CW\*(C`guard\*(C'\fR
> -object by another thread. If it has, the current thread shall wait until
> -the other thread relinquishes its lock. Once \f(CW\*(C`guard\*(C'\fR becomes available,
> -the current thread will place its own lock on it, execute the code contained in
> -the \f(CW at synchronized\fR block, and finally relinquish the lock (thereby
> -making \f(CW\*(C`guard\*(C'\fR available to other threads).
> -.Sp
> -Unlike Java, Objective-C does not allow for entire methods to be marked
> -\&\f(CW at synchronized\fR. Note that throwing exceptions out of
> -\&\f(CW at synchronized\fR blocks is allowed, and will cause the guarding object
> -to be unlocked properly.
> -.RE
> -.IP "\fB\-fobjc\-gc\fR" 4
> -.IX Item "-fobjc-gc"
> -Enable garbage collection (\s-1GC\s0) in Objective-C and Objective\-\*(C+ programs.
> -.IP "\fB\-freplace\-objc\-classes\fR" 4
> -.IX Item "-freplace-objc-classes"
> -Emit a special marker instructing \fB\f(BIld\fB\|(1)\fR not to statically link in
> -the resulting object file, and allow \fB\f(BIdyld\fB\|(1)\fR to load it in at
> -run time instead. This is used in conjunction with the Fix-and-Continue
> -debugging mode, where the object file in question may be recompiled and
> -dynamically reloaded in the course of program execution, without the need
> -to restart the program itself. Currently, Fix-and-Continue functionality
> -is only available in conjunction with the NeXT runtime on Mac \s-1OS\s0 X 10.3
> -and later.
> -.IP "\fB\-fzero\-link\fR" 4
> -.IX Item "-fzero-link"
> -When compiling for the NeXT runtime, the compiler ordinarily replaces calls
> -to \f(CW\*(C`objc_getClass("...")\*(C'\fR (when the name of the class is known at
> -compile time) with static class references that get initialized at load time,
> -which improves run-time performance. Specifying the \fB\-fzero\-link\fR flag
> -suppresses this behavior and causes calls to \f(CW\*(C`objc_getClass("...")\*(C'\fR
> -to be retained. This is useful in Zero-Link debugging mode, since it allows
> -for individual class implementations to be modified during program execution.
> -.IP "\fB\-gen\-decls\fR" 4
> -.IX Item "-gen-decls"
> -Dump interface declarations for all classes seen in the source file to a
> -file named \fI\fIsourcename\fI.decl\fR.
> -.IP "\fB\-Wassign\-intercept\fR" 4
> -.IX Item "-Wassign-intercept"
> -Warn whenever an Objective-C assignment is being intercepted by the
> -garbage collector.
> -.IP "\fB\-Wno\-protocol\fR" 4
> -.IX Item "-Wno-protocol"
> -If a class is declared to implement a protocol, a warning is issued for
> -every method in the protocol that is not implemented by the class. The
> -default behavior is to issue a warning for every method not explicitly
> -implemented in the class, even if a method implementation is inherited
> -from the superclass. If you use the \fB\-Wno\-protocol\fR option, then
> -methods inherited from the superclass are considered to be implemented,
> -and no warning is issued for them.
> -.IP "\fB\-Wselector\fR" 4
> -.IX Item "-Wselector"
> -Warn if multiple methods of different types for the same selector are
> -found during compilation. The check is performed on the list of methods
> -in the final stage of compilation. Additionally, a check is performed
> -for each selector appearing in a \f(CW\*(C`@selector(...)\*(C'\fR
> -expression, and a corresponding method for that selector has been found
> -during compilation. Because these checks scan the method table only at
> -the end of compilation, these warnings are not produced if the final
> -stage of compilation is not reached, for example because an error is
> -found during compilation, or because the \fB\-fsyntax\-only\fR option is
> -being used.
> -.IP "\fB\-Wstrict\-selector\-match\fR" 4
> -.IX Item "-Wstrict-selector-match"
> -Warn if multiple methods with differing argument and/or return types are
> -found for a given selector when attempting to send a message using this
> -selector to a receiver of type \f(CW\*(C`id\*(C'\fR or \f(CW\*(C`Class\*(C'\fR. When this flag
> -is off (which is the default behavior), the compiler will omit such warnings
> -if any differences found are confined to types which share the same size
> -and alignment.
> -.IP "\fB\-Wundeclared\-selector\fR" 4
> -.IX Item "-Wundeclared-selector"
> -Warn if a \f(CW\*(C`@selector(...)\*(C'\fR expression referring to an
> -undeclared selector is found. A selector is considered undeclared if no
> -method with that name has been declared before the
> -\&\f(CW\*(C`@selector(...)\*(C'\fR expression, either explicitly in an
> -\&\f(CW at interface\fR or \f(CW at protocol\fR declaration, or implicitly in
> -an \f(CW at implementation\fR section. This option always performs its
> -checks as soon as a \f(CW\*(C`@selector(...)\*(C'\fR expression is found,
> -while \fB\-Wselector\fR only performs its checks in the final stage of
> -compilation. This also enforces the coding style convention
> -that methods and selectors must be declared before being used.
> -.IP "\fB\-print\-objc\-runtime\-info\fR" 4
> -.IX Item "-print-objc-runtime-info"
> -Generate C header describing the largest structure that is passed by
> -value, if any.
> .Sh "Options to Control Diagnostic Messages Formatting"
> .IX Subsection "Options to Control Diagnostic Messages Formatting"
> Traditionally, diagnostic messages have been formatted irrespective of
> @@ -2136,8 +1842,7 @@ two forms, whichever is not the default.
> .PP
> The following options control the amount and kinds of warnings produced
> by \s-1GCC\s0; for further, language-specific options also refer to
> -\&\fB\*(C+ Dialect Options\fR and \fBObjective-C and Objective\-\*(C+ Dialect
> -Options\fR.
> +\&\fB\*(C+ Dialect Options\fR.
> .IP "\fB\-fsyntax\-only\fR" 4
> .IX Item "-fsyntax-only"
> Check the code for syntax errors, but don't do anything beyond that.
> @@ -2287,8 +1992,8 @@ requiring a non-null value by the \f(CW\
> .Sp
> \&\fB\-Wnonnull\fR is included in \fB\-Wall\fR and \fB\-Wformat\fR. It
> can be disabled with the \fB\-Wno\-nonnull\fR option.
> -.IP "\fB\-Winit\-self\fR (C, \*(C+, Objective-C and Objective\-\*(C+ only)" 4
> -.IX Item "-Winit-self (C, , Objective-C and Objective- only)"
> +.IP "\fB\-Winit\-self\fR (C, \*(C+ only)" 4
> +.IX Item "-Winit-self (C, only)"
> Warn about uninitialized variables which are initialized with themselves.
> Note this option can only be used with the \fB\-Wuninitialized\fR option,
> which in turn only works with \fB\-O1\fR and above.
> @@ -2339,8 +2044,8 @@ bracketed, but that for \fBb\fR is fully
> .Ve
> .Sp
> This warning is enabled by \fB\-Wall\fR.
> -.IP "\fB\-Wmissing\-include\-dirs\fR (C, \*(C+, Objective-C and Objective\-\*(C+ only)" 4
> -.IX Item "-Wmissing-include-dirs (C, , Objective-C and Objective- only)"
> +.IP "\fB\-Wmissing\-include\-dirs\fR (C and \*(C+ only)" 4
> +.IX Item "-Wmissing-include-dirs (C, only)"
> Warn if a user-supplied include directory does not exist.
> .IP "\fB\-Wparentheses\fR" 4
> .IX Item "-Wparentheses"
> @@ -2675,8 +2380,7 @@ All of the above \fB\-W\fR options combi
> warnings about constructions that some users consider questionable, and
> that are easy to avoid (or modify to prevent the warning), even in
> conjunction with macros. This also enables some language-specific
> -warnings described in \fB\*(C+ Dialect Options\fR and
> -\&\fBObjective-C and Objective\-\*(C+ Dialect Options\fR.
> +warnings described in \fB\*(C+ Dialect Options\fR.
> .PP
> The following \fB\-W...\fR options are not implied by \fB\-Wall\fR.
> Some of them warn about constructions that users generally do not
> @@ -3224,8 +2928,8 @@ itself is likely to take inordinate amou
> .IP "\fB\-Wpointer\-sign\fR" 4
> .IX Item "-Wpointer-sign"
> Warn for pointer argument passing or assignment with different signedness.
> -This option is only supported for C and Objective\-C. It is implied by
> -\&\fB\-Wall\fR and by \fB\-pedantic\fR, which can be disabled with
> +This option is only supported for C. It is implied by \&\fB\-Wall\fR
> +and by \fB\-pedantic\fR, which can be disabled with
> \&\fB\-Wno\-pointer\-sign\fR.
> .IP "\fB\-Werror\fR" 4
> .IX Item "-Werror"
> @@ -6294,12 +5998,10 @@ current directory.
> .PD 0
> .IP "\fB\-x c++\fR" 4
> .IX Item "-x c++"
> -.IP "\fB\-x objective-c\fR" 4
> -.IX Item "-x objective-c"
> .IP "\fB\-x assembler-with-cpp\fR" 4
> .IX Item "-x assembler-with-cpp"
> .PD
> -Specify the source language: C, \*(C+, Objective\-C, or assembly. This has
> +Specify the source language: C, \*(C+, or assembly. This has
> nothing to do with standards conformance or extensions; it merely
> selects which base syntax to expect. If you give none of these options,
> cpp will deduce the language from the extension of the source file:
> @@ -6728,10 +6430,6 @@ ordinary object file, it is linked in th
> difference between using an \fB\-l\fR option and specifying a file name
> is that \fB\-l\fR surrounds \fIlibrary\fR with \fBlib\fR and \fB.a\fR
> and searches several directories.
> -.IP "\fB\-lobjc\fR" 4
> -.IX Item "-lobjc"
> -You need this special case of the \fB\-l\fR option in order to
> -link an Objective-C or Objective\-\*(C+ program.
> .IP "\fB\-nostartfiles\fR" 4
> .IX Item "-nostartfiles"
> Do not use the standard system startup files when linking.
> @@ -13035,8 +12733,6 @@ preprocessor.
> .IX Item "C_INCLUDE_PATH"
> .IP "\fB\s-1CPLUS_INCLUDE_PATH\s0\fR" 4
> .IX Item "CPLUS_INCLUDE_PATH"
> -.IP "\fB\s-1OBJC_INCLUDE_PATH\s0\fR" 4
> -.IX Item "OBJC_INCLUDE_PATH"
> .PD
> Each variable's value is a list of directories separated by a special
> character, much like \fB\s-1PATH\s0\fR, in which to look for header files.
>
> Modified: head/contrib/gcc/doc/gcc.texi
> ==============================================================================
> --- head/contrib/gcc/doc/gcc.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/gcc.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -129,7 +129,6 @@ Introduction, gccint, GNU Compiler Colle
> * C Implementation:: How GCC implements the ISO C specification.
> * C Extensions:: GNU extensions to the C language family.
> * C++ Extensions:: GNU extensions to the C++ language.
> -* Objective-C:: GNU Objective-C runtime features.
> * Compatibility:: Binary Compatibility
> * Gcov:: @command{gcov}---a test coverage program.
> * Trouble:: If you have trouble using GCC.
> @@ -154,7 +153,6 @@ Introduction, gccint, GNU Compiler Colle
> @include invoke.texi
> @include implement-c.texi
> @include extend.texi
> - at include objc.texi
> @include compat.texi
> @include gcov.texi
> @include trouble.texi
>
> Modified: head/contrib/gcc/doc/invoke.texi
> ==============================================================================
> --- head/contrib/gcc/doc/invoke.texi Sun Apr 17 20:44:02 2011 (r220754)
> +++ head/contrib/gcc/doc/invoke.texi Sun Apr 17 21:03:23 2011 (r220755)
> @@ -124,8 +124,6 @@ only one of these two forms, whichever o
> * Invoking G++:: Compiling C++ programs.
> * C Dialect Options:: Controlling the variant of C language compiled.
> * C++ Dialect Options:: Variations on C++.
> -* Objective-C and Objective-C++ Dialect Options:: Variations on Objective-C
> - and Objective-C++.
> * Language Independent Options:: Controlling how diagnostics should be
> formatted.
> * Warning Options:: How picky should the compiler be?
> @@ -195,24 +193,6 @@ in the following sections.
> -Woverloaded-virtual -Wno-pmf-conversions @gol
> -Wsign-promo}
>
> - at item Objective-C and Objective-C++ Language Options
> - at xref{Objective-C and Objective-C++ Dialect Options,,Options Controlling
> -Objective-C and Objective-C++ Dialects}.
> - at gccoptlist{-fconstant-string-class=@var{class-name} @gol
> --fgnu-runtime -fnext-runtime @gol
> --fno-nil-receivers @gol
> --fobjc-call-cxx-cdtors @gol
> --fobjc-direct-dispatch @gol
> --fobjc-exceptions @gol
> --fobjc-gc @gol
> --freplace-objc-classes @gol
> --fzero-link @gol
> --gen-decls @gol
> --Wassign-intercept @gol
> --Wno-protocol -Wselector @gol
> --Wstrict-selector-match @gol
> --Wundeclared-selector}
> -
> @item Language Independent Options
> @xref{Language Independent Options,,Options to Control Diagnostic Messages Formatting}.
> @gccoptlist{-fmessage-length=@var{n} @gol
> @@ -795,8 +775,6 @@ See S/390 and zSeries Options.
> or preprocessed source.
> * C Dialect Options:: Controlling the variant of C language compiled.
> * C++ Dialect Options:: Variations on C++.
> -* Objective-C and Objective-C++ Dialect Options:: Variations on Objective-C
> - and Objective-C++.
> * Language Independent Options:: Controlling how diagnostics should be
> formatted.
> * Warning Options:: How picky should the compiler be?
> @@ -837,25 +815,8 @@ C source code which should not be prepro
> @item @var{file}.ii
> C++ source code which should not be preprocessed.
>
> - at item @var{file}.m
> -Objective-C source code. Note that you must link with the @file{libobjc}
> -library to make an Objective-C program work.
> -
> - at item @var{file}.mi
> -Objective-C source code which should not be preprocessed.
> -
> - at item @var{file}.mm
> - at itemx @var{file}.M
> -Objective-C++ source code. Note that you must link with the @file{libobjc}
> -library to make an Objective-C++ program work. Note that @samp{.M} refers
> -to a literal capital M at .
> -
> - at item @var{file}.mii
> -Objective-C++ source code which should not be preprocessed.
> -
> @item @var{file}.h
> -C, C++, Objective-C or Objective-C++ header file to be turned into a
> -precompiled header.
> +C, or C++ header file to be turned into a precompiled header.
>
> @item @var{file}.cc
> @itemx @var{file}.cp
> @@ -868,13 +829,6 @@ C++ source code which must be preprocess
> the last two letters must both be literally @samp{x}. Likewise,
> @samp{.C} refers to a literal capital C at .
>
> - at item @var{file}.mm
> - at itemx @var{file}.M
> -Objective-C++ source code which must be preprocessed.
> -
> - at item @var{file}.mii
> -Objective-C++ source code which should not be preprocessed.
> -
> @item @var{file}.hh
> @itemx @var{file}.H
> C++ header file to be turned into a precompiled header.
> @@ -946,8 +900,6 @@ the next @option{-x} option. Possible v
> @smallexample
> c c-header c-cpp-output
> c++ c++-header c++-cpp-output
> -objective-c objective-c-header objective-c-cpp-output
> -objective-c++ objective-c++-header objective-c++-cpp-output
> assembler assembler-with-cpp
> ada
> f95 f95-cpp-input
> @@ -1121,8 +1073,7 @@ explanations of options that are meaning
> @cindex options, dialect
>
> The following options control the dialect of C (or languages derived
> -from C, such as C++, Objective-C and Objective-C++) that the compiler
> -accepts:
> +from C, such as C++) that the compiler accepts:
>
> @table @gcctabopt
> @cindex ANSI support
> @@ -1955,278 +1906,6 @@ In this example, G++ will synthesize a d
> (const A&);}, while cfront will use the user-defined @samp{operator =}.
> @end table
>
> - at node Objective-C and Objective-C++ Dialect Options
> - at section Options Controlling Objective-C and Objective-C++ Dialects
> -
> - at cindex compiler options, Objective-C and Objective-C++
> - at cindex Objective-C and Objective-C++ options, command line
> - at cindex options, Objective-C and Objective-C++
> -(NOTE: This manual does not describe the Objective-C and Objective-C++
> -languages themselves. See @xref{Standards,,Language Standards
> -Supported by GCC}, for references.)
> -
> -This section describes the command-line options that are only meaningful
> -for Objective-C and Objective-C++ programs, but you can also use most of
> -the language-independent GNU compiler options.
> -For example, you might compile a file @code{some_class.m} like this:
> -
> - at smallexample
> -gcc -g -fgnu-runtime -O -c some_class.m
> - at end smallexample
> -
> - at noindent
> -In this example, @option{-fgnu-runtime} is an option meant only for
> -Objective-C and Objective-C++ programs; you can use the other options with
> -any language supported by GCC at .
> -
> -Note that since Objective-C is an extension of the C language, Objective-C
> -compilations may also use options specific to the C front-end (e.g.,
> - at option{-Wtraditional}). Similarly, Objective-C++ compilations may use
> -C++-specific options (e.g., @option{-Wabi}).
> -
> -Here is a list of options that are @emph{only} for compiling Objective-C
>
> *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-head
mailing list