Bug 3 - Nested types sometimes not visible
Summary: Nested types sometimes not visible
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: unknown
: P3 normal
Target Milestone: 3.0.x
Assignee: Nathan Sidwell
URL:
Keywords:
: 2621 3353 3926 (view as bug list)
Depends on:
Blocks:
 
Reported: 1999-08-26 01:26 UTC by Nathan Sidwell
Modified: 2013-07-23 17:42 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nathan Sidwell 1999-08-26 01:26:01 UTC
The qualified version of a nested type is sometimes not visible
during the definition of the containing class. See the example.
this gives
nathan46.C:25: no type named `F' in `struct A'
What appears to be happening is that during the lookup of D::F's base class
`D::Parent::F', `D::Parent' finds `B::Parent' because
the typedef on line 24 has not injected the name into D's scope.
Strangely, C::F is understood as the empty struct C::G defined
just prior appears to cause the name injection.

[I'll submit this independantly to the list, but let's see how
this bug tracker works :-)]

Release:
CVS

Environment:
i686-pc-linux-gnu

How-To-Repeat:
// Copyright (C) 1999 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 25 Aug 1999 <nathan@acm.org>

// typenames are not injected early enough

struct A {
};

struct B : A {
  typedef A Parent;
  struct F {
  };
};

struct C : B {
  typedef B Parent;
  struct G {};
  struct F : C::Parent::F {
    typedef C::Parent::F Parent;
  };
};

struct D : B {
  typedef B Parent;
  struct F : D::Parent::F {
    typedef D::Parent::F Parent;
  };
};
Comment 1 Nathan Sidwell 2000-11-24 02:43:17 UTC
State-Changed-From-To: open->analyzed
State-Changed-Why: confirmed as a bug
Comment 2 Nathan Sidwell 2000-11-24 10:43:18 UTC
From: nathan@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org, nathan@acm.org, nobody@gcc.gnu.org
Cc:  
Subject: Re: c++/3
Date: 24 Nov 2000 10:43:18 -0000

 Synopsis: Nested types sometimes not visible
 
 State-Changed-From-To: open->analyzed
 State-Changed-By: nathan
 State-Changed-When: Fri Nov 24 02:43:17 2000
 State-Changed-Why:
     confirmed as a bug
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=3&database=gcc
Comment 3 Nathan Sidwell 2000-11-27 00:47:51 UTC
Responsible-Changed-From-To: unassigned->nathan
Responsible-Changed-Why: patch in progress
Comment 4 Nathan Sidwell 2000-11-27 08:47:51 UTC
From: nathan@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org, nathan@acm.org, nathan@gcc.gnu.org,
  nobody@gcc.gnu.org
Cc:  
Subject: Re: c++/3
Date: 27 Nov 2000 08:47:51 -0000

 Synopsis: Nested types sometimes not visible
 
 Responsible-Changed-From-To: unassigned->nathan
 Responsible-Changed-By: nathan
 Responsible-Changed-When: Mon Nov 27 00:47:51 2000
 Responsible-Changed-Why:
     patch in progress
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=3&database=gcc
Comment 5 Nathan Sidwell 2001-01-08 03:34:04 UTC
State-Changed-From-To: analyzed->closed
State-Changed-Why: 2001-01-08  Nathan Sidwell  <nathan@codesourcery.com>
    
            * decl.c (struct binding_level): Adjust class_shadowed comments
            to reflect reality.
            (push_class_level_binding): Ajust comments to reflect reality.
            Set IDENTIFIER_CLASS_VALUE when replacing an existing binding.
            Don't set TREE_VALUE on the class_shadowed list.
Comment 6 Nathan Sidwell 2001-01-08 11:34:04 UTC
From: nathan@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org, nathan@acm.org, nathan@gcc.gnu.org
Cc:  
Subject: Re: c++/3
Date: 8 Jan 2001 11:34:04 -0000

 Synopsis: Nested types sometimes not visible
 
 State-Changed-From-To: analyzed->closed
 State-Changed-By: nathan
 State-Changed-When: Mon Jan  8 03:34:04 2001
 State-Changed-Why:
     2001-01-08  Nathan Sidwell  <nathan@codesourcery.com>
     
             * decl.c (struct binding_level): Adjust class_shadowed comments
             to reflect reality.
             (push_class_level_binding): Ajust comments to reflect reality.
             Set IDENTIFIER_CLASS_VALUE when replacing an existing binding.
             Don't set TREE_VALUE on the class_shadowed list.
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=3&database=gcc
Comment 7 gnu.andrew 2013-07-23 16:00:41 UTC
----- Original Message -----
> Hi, this is upstream version of patch that I send to gcc. I generated
> this patch with tool that I am writing:
> https://github.com/neleai/stylepp
> 
> To siplify review I added another utility
> stylepp_strip_diff
> 
> As in review most of time was spend in hunting what changed I it does
> following:
> 
> It accepts a patch file as input and divides it to nonregular and
> nonregular part. A regular part are one line changes. It marks regions
> that changed.
> 
> I split this part to three parts according which dictionary I use
> 
> Output of stylepp_strip_patch and patch are below.
> 
> 
> hat is used in web robots, html content analysers,
> hat is used in web robots, html content analyzers,
>                                         ^    ^
>          - web robots, web page content analysers, web editors and
>          + web robots, web page content analyzers, web editors and
>                                         ^    ^
>          - web robots, web page content analysers, web editors and
>          + web robots, web page content analyzers, web editors and
>                                         ^    ^
>          - web robots, web page content analysers, web editors and
>          + web robots, web page content analyzers, web editors and

This is not wrong.

>                                         ^    ^
> orts multiple datatype vocabularies. To achive this, an
> orts multiple datatype vocabularies. To archive this, an
>                                         ^^

This is.

> ing operating system, memory usage, the behaviour
> ing operating system, memory usage, the behavior
>                                         ^     ^
>                              -arbitrary behaviour if it implements the @link
>                              MBeanRegistration interface.  The same is
>                              +arbitrary behavior if it implements the @link
>                              MBeanRegistration interface.  The same is
>                                         ^     ^
>                       -  // change this behaviour if we find pages with
>                       multiple applets that
>                       +  // change this behavior if we find pages with
>                       multiple applets that
>                                         ^     ^
>  -PrintRequestAttribute</a> specify the behaviour of a complete print job.
>  +PrintRequestAttribute</a> specify the behavior of a complete print job.
>                                         ^     ^
> supplying printing attributes. Also the behaviour of print
> supplying printing attributes. Also the behavior of print

This actually creates a mis-spelling.

>                                         ^     ^
>               - * In order to mimic the behaviour of proprietary JVMs,
>               non-existant
>               + * In order to mimic the behavior of proprietary JVMs,
>               non-existant
>   

This creates a misspelling and misses "non-existent".

> urity Tool: <code>jarsigner</code>. The behaviour of these classes should
> urity Tool: <code>jarsigner</code>. The behavior of these classes should
>                                         ^     ^
> ecurity Tool: <code>keytool</code>. The behaviour of these classes should
> ecurity Tool: <code>keytool</code>. The behavior of these classes should
>                                         ^     ^

See above.

>                            -  // Set up benchmkar and cairo surface
>                            +  // Set up benchmark and cairo surface
>                                         ^       ^
>                                        -combinine NON_RETAIN and
>                                        USE_SERVANT_MANAGER policies. It
>                                        provides
>                                        +combine NON_RETAIN and
>                                        USE_SERVANT_MANAGER policies. It
>                                        provides
>                                         ^  ^
>                              -It should compativle with the older HTML
>                              versions, supporting
>                              +It should compatible with the older HTML
>                              versions, supporting
>                                         ^      ^
>        - * calls qwidget::update on the compnent.
>        + * calls qwidget::update on the component.
>                                         ^   ^
>        - * calls qwidget::update on the compnent.
>        + * calls qwidget::update on the component.
>                                         ^   ^
>                                -        contoller value.  */
>                                +        controller value.  */
>                                         ^   ^
>                               -writes a descendent of the implementation
>                               base, implementing these methods
>                               +writes a descendant of the implementation
>                               base, implementing these methods
>                                         ^      ^
> 

I'll apply the changes that are actually typos.

> 
> 
> ---
>  examples/gnu/classpath/examples/java2d/bench.c                   | 2 +-
>  external/relaxngDatatype/README.txt                              | 2 +-
>  gnu/javax/swing/text/html/package.html                           | 2 +-
>  gnu/javax/swing/text/html/parser/package.html                    | 4 ++--
>  javax/management/package.html                                    | 4 ++--
>  javax/print/package.html                                         | 4 ++--
>  javax/swing/text/html/package.html                               | 2 +-
>  javax/swing/text/html/parser/package.html                        | 2 +-
>  native/jni/java-io/java_io_VMFile.c                              | 2 +-
>  native/jni/midi-dssi/gnu_javax_sound_midi_dssi_DSSISynthesizer.c | 2 +-
>  native/jni/qt-peer/qtcomponentpeer.cpp                           | 4 ++--
>  native/plugin/gcjwebplugin.cc                                    | 2 +-
>  org/omg/PortableServer/package.html                              | 4 ++--
>  tools/gnu/classpath/tools/jarsigner/package.html                 | 2 +-
>  tools/gnu/classpath/tools/keytool/package.html                   | 2 +-
>  15 files changed, 20 insertions(+), 20 deletions(-)
>  mode change 100755 => 100644 external/relaxngDatatype/README.txt
> 
> diff --git a/examples/gnu/classpath/examples/java2d/bench.c
> b/examples/gnu/classpath/examples/java2d/bench.c
> index e5b45aa..8660e4c 100644
> --- a/examples/gnu/classpath/examples/java2d/bench.c
> +++ b/examples/gnu/classpath/examples/java2d/bench.c
> @@ -587,7 +587,7 @@ main (int argc, char **argv)
>    gtk_window_resize(GTK_WINDOW(window), screenWidth, screenHeight);
>    gtk_window_set_title(GTK_WINDOW(window), "cairo benchmark");
>    
> -  // Set up benchmkar and cairo surface
> +  // Set up benchmark and cairo surface
>    bench = benchmark_new ();
>    gtk_container_add (GTK_CONTAINER (window), bench);
>    gtk_widget_show_all (window);
> diff --git a/external/relaxngDatatype/README.txt
> b/external/relaxngDatatype/README.txt
> old mode 100755
> new mode 100644
> index 70d49b5..bc0e388
> --- a/external/relaxngDatatype/README.txt
> +++ b/external/relaxngDatatype/README.txt
> @@ -4,7 +4,7 @@
>  
>  
>  
> -RELAX NG supports multiple datatype vocabularies. To achive this, an
> +RELAX NG supports multiple datatype vocabularies. To archive this, an
>  interface between datatype vocabularies and schema processors is
>  necessary. This interface is intended to be a standard Java interface
>  for this purpose.
> diff --git a/gnu/javax/swing/text/html/package.html
> b/gnu/javax/swing/text/html/package.html
> index c7e7744..2b7f019 100644
> --- a/gnu/javax/swing/text/html/package.html
> +++ b/gnu/javax/swing/text/html/package.html
> @@ -41,7 +41,7 @@ exception statement from your version. -->
>  
>  <body>
>  <p> Provides supporting classes for web browsers,
> - web robots, web page content analysers, web editors and
> + web robots, web page content analyzers, web editors and
>   other applications applications working with Hypertext
>   Markup Language (HTML).
>  </p>
> diff --git a/gnu/javax/swing/text/html/parser/package.html
> b/gnu/javax/swing/text/html/parser/package.html
> index cd050f9..351382a 100644
> --- a/gnu/javax/swing/text/html/parser/package.html
> +++ b/gnu/javax/swing/text/html/parser/package.html
> @@ -41,9 +41,9 @@ exception statement from your version. -->
>  
>  <body>
>  <p>Provides the error tolerant, DTD-driven HTML 4.01 parser.
> -The parser that is used in web robots, html content analysers,
> +The parser that is used in web robots, html content analyzers,
>  web browsers, web editors and other related applications.
> -It should compativle with the older HTML versions, supporting
> +It should compatible with the older HTML versions, supporting
>  obsoleted HTML featues. This package also includes some
>  supporting classes.</p>
>  @author Audrius Meskauskas, Lithuania
> diff --git a/javax/management/package.html b/javax/management/package.html
> index 3543eec..d59427f 100644
> --- a/javax/management/package.html
> +++ b/javax/management/package.html
> @@ -112,7 +112,7 @@ server</emph>, is created when the Java virtual machine
> is started and a referen
>  may be obtained from the @see ManagementFactory using
>  @see ManagementFactory#getPlatformMBeanServer().  This primarily exists for
>  the purpose of
>  creating and registering the platform MBeans, described in @see
>  java.lang.management, which
> -provide access to information about the underlying operating system, memory
> usage, the behaviour
> +provide access to information about the underlying operating system, memory
> usage, the behavior
>  of the garbage collector, etc. but is equally suitable for creating and
>  registering your own
>  beans.  Alternatively, a server instance may be obtained from the @see
>  MBeanServerFactory.
>  </p>
> @@ -121,7 +121,7 @@ A bean obtains an @link ObjectName by registering with
> the server.  This operati
>  performed either by passing an existing instance to the @see
>  MBeanServer#registerMBean method
>  or by using the @see MBeanServer#createMBean method to simultaneously create
>  the bean and
>  register it with the server.  During the registration process, the bean may
>  perform some
> -arbitrary behaviour if it implements the @link MBeanRegistration interface.
> The same is
> +arbitrary behavior if it implements the @link MBeanRegistration interface.
> The same is
>  true when unregistering a bean.
>  </p>
>  <p>
> diff --git a/javax/print/package.html b/javax/print/package.html
> index 7527432..61df188 100644
> --- a/javax/print/package.html
> +++ b/javax/print/package.html
> @@ -118,7 +118,7 @@ interface methods.
>  <h2>Printing attributes</h2>
>  
>  Print services as well as print jobs report their state and capabilities
> -by the way of supplying printing attributes. Also the behaviour of print
> +by the way of supplying printing attributes. Also the behavior of print
>  jobs (like how many copies should be printed) is controlled via printing
>  attributes. For these requirements the JPS API defines different roles
>  of attributes and common syntax classes in the package
> @@ -146,7 +146,7 @@ pending, processing or canceled).</li>
>  <br>
>  <li>Print request attributes:<br>
>  The attributes of role <a href="attribute/PrintRequestAttribute.html">
> -PrintRequestAttribute</a> specify the behaviour of a complete print job.
> +PrintRequestAttribute</a> specify the behavior of a complete print job.
>  The print request attributes apply to all documents in a print job, whereas
>  the doc attributes only apply to the specific document in a print job.
>  Most of the print request attributes are also doc attributes and therefore
> diff --git a/javax/swing/text/html/package.html
> b/javax/swing/text/html/package.html
> index c7e7744..2b7f019 100644
> --- a/javax/swing/text/html/package.html
> +++ b/javax/swing/text/html/package.html
> @@ -41,7 +41,7 @@ exception statement from your version. -->
>  
>  <body>
>  <p> Provides supporting classes for web browsers,
> - web robots, web page content analysers, web editors and
> + web robots, web page content analyzers, web editors and
>   other applications applications working with Hypertext
>   Markup Language (HTML).
>  </p>
> diff --git a/javax/swing/text/html/parser/package.html
> b/javax/swing/text/html/parser/package.html
> index 5d5157f..dd8c7ae 100644
> --- a/javax/swing/text/html/parser/package.html
> +++ b/javax/swing/text/html/parser/package.html
> @@ -41,7 +41,7 @@ exception statement from your version. -->
>  
>  <body>
>  <p> Provides the DTD driven for web browsers,
> - web robots, web page content analysers, web editors and
> + web robots, web page content analyzers, web editors and
>   other applications applications working with Hypertext
>   Markup Language (HTML).
>  </p>
> diff --git a/native/jni/java-io/java_io_VMFile.c
> b/native/jni/java-io/java_io_VMFile.c
> index a15cec7..dcfe3cf 100644
> --- a/native/jni/java-io/java_io_VMFile.c
> +++ b/native/jni/java-io/java_io_VMFile.c
> @@ -982,7 +982,7 @@ maybeGrowBuf (JNIEnv *env, char *buf, int *size, int
> required)
>   * This means that if "/foo/bar" is a symbolic link to "/baz" then the
>   * canonical form of "/foo/bar/.." is "/" and not "/foo".
>   *
> - * In order to mimic the behaviour of proprietary JVMs, non-existant
> + * In order to mimic the behavior of proprietary JVMs, non-existant
>   * path components are allowed (a departure from the normal GNU system
>   * convention).  This means that if "/foo/bar" is a symbolic link to
>   * "/baz", the canonical form of "/non-existant-directory/../foo/bar"
> diff --git a/native/jni/midi-dssi/gnu_javax_sound_midi_dssi_DSSISynthesizer.c
> b/native/jni/midi-dssi/gnu_javax_sound_midi_dssi_DSSISynthesizer.c
> index 55881be..c8d0e0f 100644
> --- a/native/jni/midi-dssi/gnu_javax_sound_midi_dssi_DSSISynthesizer.c
> +++ b/native/jni/midi-dssi/gnu_javax_sound_midi_dssi_DSSISynthesizer.c
> @@ -368,7 +368,7 @@ Java_gnu_javax_sound_midi_dssi_DSSISynthesizer_open_1
>  				j, data->sample_rate);
>  
>  	    /* Set up the mapping between MIDI controllers and this
> -	       contoller value.  */
> +	       controller value.  */
>  	    if (data->desc->get_midi_controller_for_port)
>  	      {
>  		controller = data->desc->
> diff --git a/native/jni/qt-peer/qtcomponentpeer.cpp
> b/native/jni/qt-peer/qtcomponentpeer.cpp
> index 0399dd8..e71c89c 100644
> --- a/native/jni/qt-peer/qtcomponentpeer.cpp
> +++ b/native/jni/qt-peer/qtcomponentpeer.cpp
> @@ -288,7 +288,7 @@ JNIEXPORT jboolean JNICALL
> Java_gnu_java_awt_peer_qt_QtComponentPeer_handlesWhee
>  }
>  
>  /**
> - * calls qwidget::update on the compnent.
> + * calls qwidget::update on the component.
>   */
>  JNIEXPORT void JNICALL
>  Java_gnu_java_awt_peer_qt_QtComponentPeer_QtUpdateArea
>  (JNIEnv *env, jobject obj, jint x, jint y, jint w, jint h)
> @@ -300,7 +300,7 @@ JNIEXPORT void JNICALL
> Java_gnu_java_awt_peer_qt_QtComponentPeer_QtUpdateArea
>  }
>  
>  /*
> - * calls qwidget::update on the compnent.
> + * calls qwidget::update on the component.
>   */
>  JNIEXPORT void JNICALL Java_gnu_java_awt_peer_qt_QtComponentPeer_QtUpdate
>  (JNIEnv *env, jobject obj)
> diff --git a/native/plugin/gcjwebplugin.cc b/native/plugin/gcjwebplugin.cc
> index 71cffcc..149e07c 100644
> --- a/native/plugin/gcjwebplugin.cc
> +++ b/native/plugin/gcjwebplugin.cc
> @@ -396,7 +396,7 @@ GCJ_New (NPMIMEType pluginType, NPP instance, uint16
> mode,
>  
>    // Start a separate appletviewer process for each applet, even if
>    // there are multiple applets in the same page.  We may need to
> -  // change this behaviour if we find pages with multiple applets that
> +  // change this behavior if we find pages with multiple applets that
>    // rely on being run in the same VM.
>  
>    // Critical region.  Hold appletviewer_mutex while we start the
> diff --git a/org/omg/PortableServer/package.html
> b/org/omg/PortableServer/package.html
> index e4a74ef..5d2ba05 100644
> --- a/org/omg/PortableServer/package.html
> +++ b/org/omg/PortableServer/package.html
> @@ -81,7 +81,7 @@ classes that can be connected to one of the POAs, by
> instance, using
>  {@link org.omg.PortableServer.POAOperations#servant_to_reference}.
>  The implementation base also inherits an *Operations interface, containing
>  definitions of the application specific methods. The application programmer
> -writes a descendent of the implementation base, implementing these methods
> +writes a descendant of the implementation base, implementing these methods
>  for the application - specific functionality.
>  </p><p>
>  The POA objects support the method invocation by name, using
> @@ -207,7 +207,7 @@ This method is used when the created object represents
> some
>  entity in the complex database.
>  <h4>The ServantLocator finds a servant for each call</h4>
>  The {@link org.omg.PortableServer.ServantLocator} is used by POAs that
> -combinine NON_RETAIN and USE_SERVANT_MANAGER policies. It provides
> +combine NON_RETAIN and USE_SERVANT_MANAGER policies. It provides
>  a new or reused servant every time the invocation is made. The servant
>  locator must provide a servant in response of calling
>  {@link org.omg.PortableServer.ServantLocatorOperations#preinvoke}.
> diff --git a/tools/gnu/classpath/tools/jarsigner/package.html
> b/tools/gnu/classpath/tools/jarsigner/package.html
> index 50574dd..c7a0534 100644
> --- a/tools/gnu/classpath/tools/jarsigner/package.html
> +++ b/tools/gnu/classpath/tools/jarsigner/package.html
> @@ -44,7 +44,7 @@ exception statement from your version. -->
>  
>  <body>
>  This package contains the classes that provide an implementation of the
> -Security Tool: <code>jarsigner</code>. The behaviour of these classes should
> +Security Tool: <code>jarsigner</code>. The behavior of these classes should
>  match that of the same tool provided in the RI version 1.4.2, except for the
>  following:
>  
> diff --git a/tools/gnu/classpath/tools/keytool/package.html
> b/tools/gnu/classpath/tools/keytool/package.html
> index c447b8d..bae9a82 100644
> --- a/tools/gnu/classpath/tools/keytool/package.html
> +++ b/tools/gnu/classpath/tools/keytool/package.html
> @@ -44,7 +44,7 @@ exception statement from your version. -->
>  
>  <body>
>  This package contains the classes that provide an implementation of the
> -Security Tool: <code>keytool</code>. The behaviour of these classes should
> +Security Tool: <code>keytool</code>. The behavior of these classes should
>  match that of the same tool provided in the RI version 1.4.2, except for the
>  following:
>  
> --
> 1.8.3.2
> 
> 
> _______________________________________________
> Bug-classpath mailing list
> Bug-classpath@gnu.org
> https://lists.gnu.org/mailman/listinfo/bug-classpath
>
Comment 8 Robert Lougher 2013-07-23 17:42:01 UTC
A couple of things:

On 22 July 2013 16:40, Ondřej Bílka <neleai@seznam.cz> wrote:
> These patches were generated by running command
>
> stylepp_spell_patch
>
> This is third part where human intervention is needed.
>
> I first generate list of likely typos (stylepp_spellcheck script)
>
> Then I check that list with aspell and correct candidates.
>
> From these candidates I create dictionary and use stylepp_fix_spell to
> apply it.
>
> Dictionary, stripped patch and patch are below.
>
> accomodates          accommodates
> accross              across
> advantagous          advantageous
> algebric             algebraic
> aplications          applications
> approriate           appropriate
> asthetics            aesthetics
> compability          compatibility
> compatibiliy         compatibility
> composited           composed
> curent               current
> desribed             described
> dissappears          disappears
> existant             existent
> extendsions          extensions
> featues              features
> flattenning          flattening
> fuction              function
> hundredsof           hundreds_of
> implemenetation      implementation
> ineqality            inequality
> initialisation       initialization

The 's' spelling is OK in British English.

> instace              instance
> interesing           interesting
> interpeter           interpreter
> logrithm             logarithm
> matchers             marchers
> muliple              multiple
> obtaines             obtains
> occured              occurred
> occurrs              occurs
> ouput                output
> overridding          overriding
> paramter             parameter
> parantheses          parentheses
> probabily            probability
> procesors            processors
> realiable            reliable
> recommanded          recommended
> relase               release
> remebers             remembers
> represenation        representation
> representaiton       representation
> resettable           resetable
> retore               restore
> satelitte            satellite
> sendign              sending
> seperator            separator
> sigificance          significance
> simpliest            simplest
> specfied             specified
> specialised          specialized

See above

> specifyed            specified
> thounsands           thousands
> uless                unless
> utilised             utilized

See above


> y {@link DynAnyFactory}. The factory is obtaines by
> y {@link DynAnyFactory}. The factory is obtains by
>                                         ^    ^

This is wrong.  It should be "obtained".

> -DynAny's are created by {@link DynAnyFactory}. The factory is obtaines by
> +DynAny's are created by {@link DynAnyFactory}. The factory is obtains by

See above.