1  static int v_internal __attribute__((shared,used));
       2  int v_common __attribute__((shared,common));
       3  int v_extdef __attribute__((shared,nocommon));
       4  extern int v_extdecl __attribute__((shared));
       5  
       6  int use()
       7  {
       8    return v_extdecl;
       9  }
      10  
      11  /* { dg-final { scan-assembler "\[\r\n\]\[\t \]*.shared \[^,\r\n\]*v_internal" } } */
      12  /* { dg-final { scan-assembler "\[\r\n\]\[\t \]*.weak .shared \[^,\r\n\]*v_common" } } */
      13  /* { dg-final { scan-assembler "\[\r\n\]\[\t \]*.visible .shared \[^,\r\n\]*v_extdef" } } */
      14  /* { dg-final { scan-assembler "\[\r\n\]\[\t \]*.extern .shared \[^,\r\n\]*v_extdecl" } } */