*******************************************************************************
*** GNU17 BUG REPORT **********************************************************
*******************************************************************************
Registration No.    :C17_001_compiler
Issue and revision  :2008/5/19

--- <Tool name / Object version> ----------------------------------------------
GNU17V1.2.0 or earlier

--- <Content> -----------------------------------------------------------------
An address error exception occurs when an array element of the structure is
passed by value to a subroutine.

--- <Generation condition> ----------------------------------------------------
When all the following conditions are filled.

* Declaring the structure as an array.
* An array of the structure is passed by value.
* The size of the structure is 7 byte or less.
* The size of the structure is an odd value.
* The type of the structure member variable is only unsigned char / char.

sample code:
 // The size of the structure is defined as 7byte, odd byte,
 // and the structure is constituted only by unsigned char /
 // char member variable.
  typedef struct s_tag {       
      char m1 [3];
      char m2 ;
      unsigned char m3 ;
  }STR ;

  void sub( STR arg );

  int main( void )
  {
      // Declaring the structure as an array.
      STR s[2] = { { 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } } ;    
      int i ;

      // An array of the structure is passed by value.
      for( i = 0 ; i < 2 ; i++ ) sub( s[i] ) ;  

---- <Temporary Measures> -----------------------------------------------------
This bug can be avoided by the above conditions are not filled.
Concretely, it is as follows.

Example of measures:
* Add a char type member variable to the structure, and make the size of the 
  structure into a even value.
* Make the size of the structure into 8 bytes or more.
* Pass the structure to a subroutine by reference( & ).

--- <About the correction version> --------------------------------------------
Patch: None
Product version: GNU17V1.2.1

