source: patches/gcc-4.3.3-branch_update-1.patch@ fe40bd7

clfs-1.2 clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since fe40bd7 was fe40bd7, checked in by Jim Gifford <clfs@…>, 16 years ago

Added GCC Branch Update Patch to -1

  • Property mode set to 100644
File size: 246.9 KB
  • gcc/alias.c

    Submitted By: Jim Gifford (jim at cross-lfs dot org)
    Date: 02-03-2009
    Initial Package Version: 4.3.3
    Origin: Upstream
    Upstream Status: Applied
    Description: This is a branch update for gcc-4.3.3, and should be
                 rechecked periodically.
    
    diff -Naur gcc-4.3.3.orig/gcc/alias.c gcc-4.3.3/gcc/alias.c
    old new  
    15081508  if (rtx_equal_p (x_base, y_base))
    15091509    return 1;
    15101510
    1511   /* The base addresses of the read and write are different expressions.
    1512      If they are both symbols and they are not accessed via AND, there is
    1513      no conflict.  We can bring knowledge of object alignment into play
    1514      here.  For example, on alpha, "char a, b;" can alias one another,
    1515      though "char a; long b;" cannot.  */
     1511  /* The base addresses are different expressions.  If they are not accessed
     1512     via AND, there is no conflict.  We can bring knowledge of object
     1513     alignment into play here.  For example, on alpha, "char a, b;" can
     1514     alias one another, though "char a; long b;" cannot.  AND addesses may
     1515     implicitly alias surrounding objects; i.e. unaligned access in DImode
     1516     via AND address can alias all surrounding object types except those
     1517     with aligment 8 or higher.  */
     1518  if (GET_CODE (x) == AND && GET_CODE (y) == AND)
     1519    return 1;
     1520  if (GET_CODE (x) == AND
     1521      && (GET_CODE (XEXP (x, 1)) != CONST_INT
     1522          || (int) GET_MODE_UNIT_SIZE (y_mode) < -INTVAL (XEXP (x, 1))))
     1523    return 1;
     1524  if (GET_CODE (y) == AND
     1525      && (GET_CODE (XEXP (y, 1)) != CONST_INT
     1526          || (int) GET_MODE_UNIT_SIZE (x_mode) < -INTVAL (XEXP (y, 1))))
     1527    return 1;
     1528
     1529  /* Differing symbols not accessed via AND never alias.  */
    15161530  if (GET_CODE (x_base) != ADDRESS && GET_CODE (y_base) != ADDRESS)
    1517     {
    1518       if (GET_CODE (x) == AND && GET_CODE (y) == AND)
    1519         return 1;
    1520       if (GET_CODE (x) == AND
    1521           && (GET_CODE (XEXP (x, 1)) != CONST_INT
    1522               || (int) GET_MODE_UNIT_SIZE (y_mode) < -INTVAL (XEXP (x, 1))))
    1523         return 1;
    1524       if (GET_CODE (y) == AND
    1525           && (GET_CODE (XEXP (y, 1)) != CONST_INT
    1526               || (int) GET_MODE_UNIT_SIZE (x_mode) < -INTVAL (XEXP (y, 1))))
    1527         return 1;
    1528       /* Differing symbols never alias.  */
    1529       return 0;
    1530     }
     1531    return 0;
    15311532
    15321533  /* If one address is a stack reference there can be no alias:
    15331534     stack references using different base registers do not alias,
  • gcc/calls.c

    diff -Naur gcc-4.3.3.orig/gcc/calls.c gcc-4.3.3/gcc/calls.c
    old new  
    978978            && targetm.calls.split_complex_arg (argtype))
    979979          {
    980980            tree subtype = TREE_TYPE (argtype);
    981             arg = save_expr (arg);
    982981            args[j].tree_value = build1 (REALPART_EXPR, subtype, arg);
    983982            j += inc;
    984983            args[j].tree_value = build1 (IMAGPART_EXPR, subtype, arg);
  • gcc/ChangeLog

    diff -Naur gcc-4.3.3.orig/gcc/ChangeLog gcc-4.3.3/gcc/ChangeLog
    old new  
     12009-02-02  Catherine Moore  <clm@codesourcery.com>
     2
     3        * sde.h (SUBTARGET_ARM_SPEC): Don't assemble -fpic code as
     4        -mabicalls.
     5
     62009-01-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
     7
     8        * config/pa/fptr.c: Revert license to GPL 2.
     9        * config/pa/milli64.S: Likewise.
     10
     112009-01-30  Richard Guenther  <rguenther@suse.de>
     12
     13        PR tree-optimization/39041
     14        * tree-ssa-forwprop.c (forward_propagate_addr_expr_1):
     15        Propagate variable indices only if the types match for this stmt.
     16
     172009-01-29  Uros Bizjak  <ubizjak@gmail.com>
     18
     19        Backport from mainline:
     20        2009-01-28  Uros Bizjak  <ubizjak@gmail.com>
     21
     22        PR target/38988
     23        * config/i386/i386.md (set_rip_rex64): Wrap operand 1 in label_ref.
     24        (set_got_offset_rex64): Ditto.
     25
     26        2009-01-27  Uros Bizjak  <ubizjak@gmail.com>
     27
     28        PR middle-end/38969
     29        * calls.c (initialize_argument_information): Do not wrap complex
     30        arguments in SAVE_EXPR.
     31
     322009-01-27  Steve Ellcey  <sje@cup.hp.com>
     33
     34        PR middle-end/38615
     35        * gimplify.c (gimplify_init_constructor): Fix promotion of const
     36        variables to static.
     37        * doc/invoke.texi (-fmerge-all-constants): Update description.
     38
     392009-01-27  Uros Bizjak  <ubizjak@gmail.com>
     40
     41        Backport from mainline:
     42        2009-01-13  Uros Bizjak  <ubizjak@gmail.com>
     43
     44        * config/alpha/alpha.c (alpha_legitimate_address_p): Explicit
     45        relocations of local symbols wider than UNITS_PER_WORD are not valid.
     46        (alpha_legitimize_address): Do not split local symbols wider than
     47        UNITS_PER_WORD into HIGH/LO_SUM parts.
     48
     49        2009-01-07  Uros Bizjak  <ubizjak@gmail.com>
     50
     51        PR target/38706
     52        * config/alpha/alpha.c (alpha_end_function): For TARGET_ABI_OSF, call
     53        free_after_compilation when outputting a thunk.
     54        (alpha_output_mi_thunk_osf): Assert that we are processing a thunk.
     55        Do not call free_after_compilation here.
     56
     57        2008-12-22  Uros Bizjak  <ubizjak@gmail.com>
     58
     59        * config/alpha/elf.h (ASM_OUTPUT_EXTERNAL): New macro.
     60
     61        2008-12-21  Uros Bizjak  <ubizjak@gmail.com>
     62
     63        * config/alpha/alpha.c (alpha_pad_noreturn): New static function.
     64        (alpha_reorg): Call alpha_pad_noreturn.
     65
     66        2008-12-08  Uros Bizjak  <ubizjak@gmail.com>
     67
     68        * config/alpha/alpha.c (alpha_set_memflags): Process memory
     69        references in full insn sequence.
     70
     71        2008-12-05  Uros Bizjak  <ubizjak@gmail.com>
     72
     73        * config/alpha/alpha.c (alpha_fold_vector_minmax): Create
     74        VIEW_CONVERT_EXPR to convert output to long_integer_type_node.
     75
     76        (alpha_emit_conditional_branch): Do not generate direct branch
     77        for UNORDERED comparisons.
     78
     792008-01-26  Paolo Bonzini  <bonzini@gnu.org>
     80
     81        PR tree-optimization/38932
     82        * fold-const.c (fold_unary_ignore_overflow): New.
     83        * tree.h (fold_unary_ignore_overflow): Declare.
     84        * tree-ssa-ccp.c (ccp_fold): Use fold_unary_ignore_overflow.
     85        * tree-ssa-sccvn.c (simplify_unary_expression): Likewise.
     86
     872009-01-25  Uros Bizjak  <ubizjak@gmail.com>
     88
     89        Backport from mainline:
     90        2009-01-22  Uros Bizjak  <ubizjak@gmail.com>
     91
     92        PR target/38931
     93        * config/i386/i386.md (*movsi_1): Use type "mmx" for alternative 2.
     94        (*movdi_1_rex64): Use type "mmx" for alternative 5.
     95
     96        2009-01-21  Uros Bizjak  <ubizjak@gmail.com>
     97
     98        PR rtl-optimization/38879
     99        * alias.c (base_alias_check): Unaligned access via AND address can
     100        alias all surrounding object types except those with sizes equal
     101        or wider than the size of unaligned access.
     102
     1032009-01-25  Richard Guenther  <rguenther@suse.de>
     104
     105        Backport from mainline:
     106        2008-12-02  Richard Guenther  <rguenther@suse.de>
     107
     108        PR tree-optimization/38359
     109        * fold-const.c (fold_binary): Fold -1 >> x to -1 only for
     110        non-negative x.
     111
     1122009-01-24  Eric Botcazou  <ebotcazou@adacore.com>
     113
     114        * config/sparc/linux.h (DBX_REGISTER_NUMBER): Delete.
     115        * config/sparc/linux64.h (DBX_REGISTER_NUMBER): Likewise.
     116        * config/sparc/sysv4.h (DBX_REGISTER_NUMBER): Likewise.
     117
     1182009-01-24  H.J. Lu  <hongjiu.lu@intel.com>
     119
     120        PR target/38902
     121        Backport from mainline:
     122        2008-12-23  Jakub Jelinek  <jakub@redhat.com>
     123
     124        * config/i386/i386.c (expand_movmem_via_rep_mov): Set MEM_SIZE
     125        correctly.
     126        (expand_setmem_via_rep_stos): Add ORIG_VALUE argument.  If
     127        ORIG_VALUE is const0_rtx and COUNT is constant, set MEM_SIZE
     128        on DESTMEM.
     129        (ix86_expand_setmem): Adjust callers.
     130
     1312008-01-24  Richard Guenther  <rguenther@suse.de>
     132
     133        * BASE-VER: Set to 4.3.4.
     134        * DEV-PHASE: Set to prerelease.
     135
    11362009-01-24  Release Manager
    2137
    3138        * GCC 4.3.3 released.
     
    51402009-01-20  Joseph Myers  <joseph@codesourcery.com>
    6141
    7142        PR other/38758
    8         * longlong.h: Update copyright years.  Use soft-fp license
    9         notice.
     143        * longlong.h: Update copyright years.  Use soft-fp license notice.
    10144
    111452009-01-19  Richard Guenther  <rguenther@suse.de>
    12146
     
    41175       
    421762009-01-11  Matthias Klose  <doko@ubuntu.com>
    43177
    44         PR middle-end/38616, backport from mainline:
     178        PR middle-end/38616
     179        Backport from mainline:
    45180        2008-05-04  Uros Bizjak  <ubizjak@gmail.com>
    46181
    47182        * config/i386/i386.md (*strmovsi_1): Simplify asm alternatives.
     
    509644        PR tree-optimization/37102
    510645        * tree-outof-ssa.c (remove_gimple_phi_args): Remove all the PHI args 
    511646        from a node. Check to see if another PHI is dead.
    512         (eliminate_useless_phis): Rename from eliminate_virtual_phis and remove
    513         real PHIs which have no uses.
     647        (eliminate_useless_phis): Rename from eliminate_virtual_phis and
     648        remove real PHIs which have no uses.
    514649        (rewrite_out_of_ssa): Call eliminate_useless_phis.
    515650
    5166512008-10-08  Simon Martin  <simartin@users.sourceforge.net>
     
    9861121
    9871122        (MFC_MIN_DMA_LIST_ELEMENTS): New define.
    9881123        (MFC_MAX_DMA_LIST_ELEMENTS): Likewise.
    989         (MFC_MIN_DMA_LIST_SIZE): Redefine in terms of MFC_MIN_DMA_LIST_ELEMENTS.
    990         (MFC_MAX_DMA_LIST_SIZE): Redefine in terms of MFC_MAX_DMA_LIST_ELEMENTS.
     1124        (MFC_MIN_DMA_LIST_SIZE): Redefine in terms of
     1125        MFC_MIN_DMA_LIST_ELEMENTS.
     1126        (MFC_MAX_DMA_LIST_SIZE): Redefine in terms of
     1127        MFC_MAX_DMA_LIST_ELEMENTS.
    9911128
    9921129        (MFC_START_ENABLE): Remove PPU-only define.
    9931130        (MFC_PUTS_CMD, MFC_PUTFS_CMD, MFC_PUTBS_CMD): Likewise.
  • gcc/config/alpha/alpha.c

    diff -Naur gcc-4.3.3.orig/gcc/config/alpha/alpha.c gcc-4.3.3/gcc/config/alpha/alpha.c
    old new  
    11/* Subroutines used for code generation on the DEC Alpha.
    22   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
    3    2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
     3   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
     4   Free Software Foundation, Inc.
    45   Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
    56
    67This file is part of GCC.
     
    863864        }
    864865    }
    865866
    866   /* If we're managing explicit relocations, LO_SUM is valid, as
    867      are small data symbols.  */
    868   else if (TARGET_EXPLICIT_RELOCS)
     867  /* If we're managing explicit relocations, LO_SUM is valid, as are small
     868     data symbols.  Avoid explicit relocations in modes larger than word
     869     mode since i.e. $LC0+8($1) can fold around +/- 32k offset.  */
     870  else if (TARGET_EXPLICIT_RELOCS
     871           && GET_MODE_SIZE (mode) <= UNITS_PER_WORD)
    869872    {
    870873      if (small_symbolic_operand (x, Pmode))
    871874        return true;
     
    915918   to be legitimate.  If we find one, return the new, valid address.  */
    916919
    917920rtx
    918 alpha_legitimize_address (rtx x, rtx scratch,
    919                           enum machine_mode mode ATTRIBUTE_UNUSED)
     921alpha_legitimize_address (rtx x, rtx scratch, enum machine_mode mode)
    920922{
    921923  HOST_WIDE_INT addend;
    922924
     
    964966      goto split_addend;
    965967    }
    966968
    967   /* If this is a local symbol, split the address into HIGH/LO_SUM parts.  */
    968   if (TARGET_EXPLICIT_RELOCS && symbolic_operand (x, Pmode))
     969  /* If this is a local symbol, split the address into HIGH/LO_SUM parts.
     970     Avoid modes larger than word mode since i.e. $LC0+8($1) can fold
     971     around +/- 32k offset.  */
     972  if (TARGET_EXPLICIT_RELOCS
     973      && GET_MODE_SIZE (mode) <= UNITS_PER_WORD
     974      && symbolic_operand (x, Pmode))
    969975    {
    970976      rtx r0, r16, eqv, tga, tp, insn, dest, seq;
    971977
     
    16021608  return -1;
    16031609}
    16041610
    1605 /* Given INSN, which is an INSN list or the PATTERN of a single insn
    1606    generated to perform a memory operation, look for any MEMs in either
     1611/* Given SEQ, which is an INSN list, look for any MEMs in either
    16071612   a SET_DEST or a SET_SRC and copy the in-struct, unchanging, and
    16081613   volatile flags from REF into each of the MEMs found.  If REF is not
    16091614   a MEM, don't do anything.  */
    16101615
    16111616void
    1612 alpha_set_memflags (rtx insn, rtx ref)
     1617alpha_set_memflags (rtx seq, rtx ref)
    16131618{
    1614   rtx *base_ptr;
     1619  rtx insn;
    16151620
    1616   if (GET_CODE (ref) != MEM)
     1621  if (!MEM_P (ref))
    16171622    return;
    16181623
    16191624  /* This is only called from alpha.md, after having had something
     
    16261631      && !MEM_READONLY_P (ref))
    16271632    return;
    16281633
    1629   if (INSN_P (insn))
    1630     base_ptr = &PATTERN (insn);
    1631   else
    1632     base_ptr = &insn;
    1633   for_each_rtx (base_ptr, alpha_set_memflags_1, (void *) ref);
     1634  for (insn = seq; insn; insn = NEXT_INSN (insn))
     1635    if (INSN_P (insn))
     1636      for_each_rtx (&PATTERN (insn), alpha_set_memflags_1, (void *) ref);
     1637    else
     1638      gcc_unreachable ();
    16341639}
    16351640
    16361641
  • gcc/config/alpha/elf.h

     static rtx alpha_emit_set_const (rtx, enum machine_mode, HOST_WIDE_INT,
    @@ -2452,7 +2457,7 @@
       if (alpha_compare.fp_p)
         {
           cmp_mode = DFmode;
    -      if (flag_unsafe_math_optimizations)
    +      if (flag_unsafe_math_optimizations && cmp_code != UNORDERED)
     	{
     	  /* When we are not as concerned about non-finite values, and we
     	     are comparing against zero, we can branch directly.  */
    @@ -6794,7 +6799,7 @@
       tree op0 = fold_convert (vtype, op[0]);
       tree op1 = fold_convert (vtype, op[1]);
       tree val = fold_build2 (code, vtype, op0, op1);
    -  return fold_convert (long_integer_type_node, val);
    +  return fold_build1 (VIEW_CONVERT_EXPR, long_integer_type_node, val);
     }
     
     static tree
    @@ -8242,6 +8247,11 @@
       if (GET_CODE (insn) == CALL_INSN)
         output_asm_insn (get_insn_template (CODE_FOR_nop, NULL), NULL);
     
    +#if TARGET_ABI_OSF
    +  if (current_function_is_thunk)
    +    free_after_compilation (cfun);
    +#endif
    +
     #if TARGET_ABI_OPEN_VMS
       alpha_write_linkage (file, fnname, decl);
     #endif
    @@ -8281,6 +8291,8 @@
       HOST_WIDE_INT hi, lo;
       rtx this, insn, funexp;
     
    +  gcc_assert (current_function_is_thunk);
    +
       /* We always require a valid GP.  */
       emit_insn (gen_prologue_ldgp ());
       emit_note (NOTE_INSN_PROLOGUE_END);
    @@ -9268,12 +9280,68 @@
           i = next;
         }
     }
    +
    +/* Insert an unop between a noreturn function call and GP load.  */
    +
    +static void
    +alpha_pad_noreturn (void)
    +{
    +  rtx insn, next;
    +
    +  for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
    +    {
    +      rtx pat;
    +
    +      if (!CALL_P (insn)
    +	  || !find_reg_note (insn, REG_NORETURN, NULL_RTX))
    +        continue;
    +
    +      next = next_active_insn (insn);
    +
    +      if (next)
    +	{
    +	  pat = PATTERN (next);
    +
    +	  if (GET_CODE (pat) == SET
    +	      && GET_CODE (SET_SRC (pat)) == UNSPEC_VOLATILE
    +	      && XINT (SET_SRC (pat), 1) == UNSPECV_LDGP1)
    +	    emit_insn_after (gen_unop (), insn);
    +	}
    +    }
    +}
     
    
     /* Machine dependent reorg pass.  */
     
     static void
     alpha_reorg (void)
     {
    +  /* Workaround for a linker error that triggers when an
    +     exception handler immediatelly follows a noreturn function.
    +
    +     The instruction stream from an object file:
    +
    +  54:   00 40 5b 6b     jsr     ra,(t12),58 <__func+0x58>
    +  58:   00 00 ba 27     ldah    gp,0(ra)
    +  5c:   00 00 bd 23     lda     gp,0(gp)
    +  60:   00 00 7d a7     ldq     t12,0(gp)
    +  64:   00 40 5b 6b     jsr     ra,(t12),68 <__func+0x68>
    +
    +     was converted in the final link pass to:
    +
    +   fdb24:       a0 03 40 d3     bsr     ra,fe9a8 <_called_func+0x8>
    +   fdb28:       00 00 fe 2f     unop
    +   fdb2c:       00 00 fe 2f     unop
    +   fdb30:       30 82 7d a7     ldq     t12,-32208(gp)
    +   fdb34:       00 40 5b 6b     jsr     ra,(t12),fdb38 <__func+0x68>
    +
    +     GP load instructions were wrongly cleared by the linker relaxation
    +     pass.  This workaround prevents removal of GP loads by inserting
    +     an unop instruction between a noreturn function call and
    +     exception handler prologue.  */
    +
    +  if (current_function_has_exception_handlers ())
    +    alpha_pad_noreturn ();
    +
       if (alpha_tp != ALPHA_TP_PROG || flag_exceptions)
         alpha_handle_trap_shadows ();
     
    diff -Naur gcc-4.3.3.orig/gcc/config/alpha/elf.h gcc-4.3.3/gcc/config/alpha/elf.h
    old new  
    423423#if defined(HAVE_LD_EH_FRAME_HDR)
    424424#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
    425425#endif
     426
     427/* A C statement (sans semicolon) to output to the stdio stream STREAM
     428   any text necessary for declaring the name of an external symbol
     429   named NAME which is referenced in this compilation but not defined.
     430   It is needed to properly support non-default visibility.  */
     431
     432#ifndef ASM_OUTPUT_EXTERNAL
     433#define ASM_OUTPUT_EXTERNAL(FILE, DECL, NAME) \
     434  default_elf_asm_output_external (FILE, DECL, NAME)
     435#endif
  • gcc/config/i386/i386.c

    diff -Naur gcc-4.3.3.orig/gcc/config/i386/i386.c gcc-4.3.3/gcc/config/i386/i386.c
    old new  
    1477314773      destexp = gen_rtx_PLUS (Pmode, destptr, countreg);
    1477414774      srcexp = gen_rtx_PLUS (Pmode, srcptr, countreg);
    1477514775    }
     14776  if (CONST_INT_P (count))
     14777    {
     14778      count = GEN_INT (INTVAL (count)
     14779                       & ~((HOST_WIDE_INT) GET_MODE_SIZE (mode) - 1));
     14780      destmem = shallow_copy_rtx (destmem);
     14781      srcmem = shallow_copy_rtx (srcmem);
     14782      set_mem_size (destmem, count);
     14783      set_mem_size (srcmem, count);
     14784    }
     14785  else
     14786    {
     14787      if (MEM_SIZE (destmem))
     14788        set_mem_size (destmem, NULL_RTX);
     14789      if (MEM_SIZE (srcmem))
     14790        set_mem_size (srcmem, NULL_RTX);
     14791    }
    1477614792  emit_insn (gen_rep_mov (destptr, destmem, srcptr, srcmem, countreg,
    1477714793                          destexp, srcexp));
    1477814794}
     
    1478114797   Arguments have same meaning as for previous function */
    1478214798static void
    1478314799expand_setmem_via_rep_stos (rtx destmem, rtx destptr, rtx value,
    14784                             rtx count,
    14785                             enum machine_mode mode)
     14800                            rtx count, enum machine_mode mode,
     14801                            rtx orig_value)
    1478614802{
    1478714803  rtx destexp;
    1478814804  rtx countreg;
     
    1479914815    }
    1480014816  else
    1480114817    destexp = gen_rtx_PLUS (Pmode, destptr, countreg);
     14818  if (orig_value == const0_rtx && CONST_INT_P (count))
     14819    {
     14820      count = GEN_INT (INTVAL (count)
     14821                       & ~((HOST_WIDE_INT) GET_MODE_SIZE (mode) - 1));
     14822      destmem = shallow_copy_rtx (destmem);
     14823      set_mem_size (destmem, count);
     14824    }
     14825  else if (MEM_SIZE (destmem))
     14826    set_mem_size (destmem, NULL_RTX);
    1480214827  emit_insn (gen_rep_stos (destptr, countreg, destmem, value, destexp));
    1480314828}
    1480414829
     
    1587115896      break;
    1587215897    case rep_prefix_8_byte:
    1587315898      expand_setmem_via_rep_stos (dst, destreg, promoted_val, count_exp,
    15874                                   DImode);
     15899                                  DImode, val_exp);
    1587515900      break;
    1587615901    case rep_prefix_4_byte:
    1587715902      expand_setmem_via_rep_stos (dst, destreg, promoted_val, count_exp,
    15878                                   SImode);
     15903                                  SImode, val_exp);
    1587915904      break;
    1588015905    case rep_prefix_1_byte:
    1588115906      expand_setmem_via_rep_stos (dst, destreg, promoted_val, count_exp,
    15882                                   QImode);
     15907                                  QImode, val_exp);
    1588315908      break;
    1588415909    }
    1588515910  /* Adjust properly the offset of src and dest memory for aliasing.  */
  • gcc/config/i386/i386.md

    diff -Naur gcc-4.3.3.orig/gcc/config/i386/i386.md gcc-4.3.3/gcc/config/i386/i386.md
    old new  
    13971397          gcc_unreachable ();
    13981398        }
    13991399
    1400     case TYPE_MMXADD:
     1400    case TYPE_MMX:
    14011401      return "pxor\t%0, %0";
    14021402
    14031403    case TYPE_MMXMOV:
     
    14151415}
    14161416  [(set (attr "type")
    14171417     (cond [(eq_attr "alternative" "2")
    1418               (const_string "mmxadd")
     1418              (const_string "mmx")
    14191419            (eq_attr "alternative" "3,4,5")
    14201420              (const_string "mmxmov")
    14211421            (eq_attr "alternative" "6")
     
    22312231      return "movq\t{%1, %0|%0, %1}";
    22322232
    22332233    case TYPE_SSELOG1:
    2234     case TYPE_MMXADD:
     2234    case TYPE_MMX:
    22352235      return "pxor\t%0, %0";
    22362236
    22372237    case TYPE_MULTI:
     
    22522252}
    22532253  [(set (attr "type")
    22542254     (cond [(eq_attr "alternative" "5")
    2255               (const_string "mmxadd")
     2255              (const_string "mmx")
    22562256            (eq_attr "alternative" "6,7,8,9,10")
    22572257              (const_string "mmxmov")
    22582258            (eq_attr "alternative" "11")
     
    1500115001
    1500215002(define_insn "set_rip_rex64"
    1500315003  [(set (match_operand:DI 0 "register_operand" "=r")
    15004         (unspec:DI [(match_operand:DI 1 "" "")] UNSPEC_SET_RIP))]
     15004        (unspec:DI [(label_ref (match_operand 1 "" ""))] UNSPEC_SET_RIP))]
    1500515005  "TARGET_64BIT"
    1500615006  "lea{q}\t{%l1(%%rip), %0|%0, %l1[rip]}"
    1500715007  [(set_attr "type" "lea")
     
    1500915009
    1501015010(define_insn "set_got_offset_rex64"
    1501115011  [(set (match_operand:DI 0 "register_operand" "=r")
    15012         (unspec:DI [(match_operand:DI 1 "" "")] UNSPEC_SET_GOT_OFFSET))]
     15012        (unspec:DI
     15013          [(label_ref (match_operand 1 "" ""))]
     15014          UNSPEC_SET_GOT_OFFSET))]
    1501315015  "TARGET_64BIT"
    1501415016  "movabs{q}\t{$_GLOBAL_OFFSET_TABLE_-%l1, %0|%0, OFFSET FLAT:_GLOBAL_OFFSET_TABLE_-%l1}"
    1501515017  [(set_attr "type" "imov")
  • gcc/config/mips/sde.h

    diff -Naur gcc-4.3.3.orig/gcc/config/mips/sde.h gcc-4.3.3/gcc/config/mips/sde.h
    old new  
    5656#undef SUBTARGET_ASM_SPEC
    5757#define SUBTARGET_ASM_SPEC "\
    5858%{!mips1:--trap} \
    59 %{fPIC|fpic|fPIE|fpie:%{!mips16*:-KPIC}} \
    6059%{mips16:-no-mips16}"
    6160
    6261#undef LINK_SPEC
  • gcc/config/pa/fptr.c

    diff -Naur gcc-4.3.3.orig/gcc/config/pa/fptr.c gcc-4.3.3/gcc/config/pa/fptr.c
    old new  
    66
    77GCC is free software; you can redistribute it and/or modify it under
    88the terms of the GNU General Public License as published by the Free
    9 Software Foundation; either version 3, or (at your option) any later
     9Software Foundation; either version 2, or (at your option) any later
    1010version.
    1111
    1212In addition to the permissions in the GNU General Public License, the
     
    2424for more details.
    2525
    2626You should have received a copy of the GNU General Public License
    27 along with GCC; see the file COPYING3.  If not see
    28 <http://www.gnu.org/licenses/>.  */
     27along with GCC; see the file COPYING.  If not, write to the Free
     28Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
     2902110-1301, USA.  */
    2930
    3031/* WARNING: The code is this function depends on internal and undocumented
    3132   details of the GNU linker and dynamic loader as implemented for parisc
  • gcc/config/pa/milli64.S

    diff -Naur gcc-4.3.3.orig/gcc/config/pa/milli64.S gcc-4.3.3/gcc/config/pa/milli64.S
    old new  
    88
    99GCC is free software; you can redistribute it and/or modify it under
    1010the terms of the GNU General Public License as published by the Free
    11 Software Foundation; either version 3, or (at your option) any later
     11Software Foundation; either version 2, or (at your option) any later
    1212version.
    1313
    1414In addition to the permissions in the GNU General Public License, the
     
    2626for more details.
    2727
    2828You should have received a copy of the GNU General Public License
    29         along with GCC; see the file COPYING3.  If not see
    30 <http://www.gnu.org/licenses/>.  */
     29along with GCC; see the file COPYING.  If not, write to the Free
     30Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
     3102110-1301, USA.  */
    3132
    3233#ifdef pa64
    3334        .level  2.0w
  • gcc/config/sparc/linux64.h

    diff -Naur gcc-4.3.3.orig/gcc/config/sparc/linux64.h gcc-4.3.3/gcc/config/sparc/linux64.h
    old new  
    285285%{mlittle-endian:-EL} \
    286286%(asm_cpu) %(asm_arch) %(asm_relax)"
    287287
    288 /* Same as sparc.h */
    289 #undef DBX_REGISTER_NUMBER
    290 #define DBX_REGISTER_NUMBER(REGNO) (REGNO)
    291 
    292288#undef ASM_OUTPUT_ALIGNED_LOCAL
    293289#define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN)               \
    294290do {                                                                    \
  • gcc/config/sparc/linux.h

    diff -Naur gcc-4.3.3.orig/gcc/config/sparc/linux.h gcc-4.3.3/gcc/config/sparc/linux.h
    old new  
    148148  "%{V} %{v:%{!V:-V}} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Wa,*:%*} -s \
    149149   %{fpic|fPIC|fpie|fPIE:-K PIC} %(asm_cpu) %(asm_relax)"
    150150
    151 /* Same as sparc.h */
    152 #undef DBX_REGISTER_NUMBER
    153 #define DBX_REGISTER_NUMBER(REGNO) (REGNO)
    154 
    155151#undef ASM_OUTPUT_ALIGNED_LOCAL
    156152#define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN)               \
    157153do {                                                                    \
  • gcc/config/sparc/sysv4.h

    diff -Naur gcc-4.3.3.orig/gcc/config/sparc/sysv4.h gcc-4.3.3/gcc/config/sparc/sysv4.h
    old new  
    9393        fprintf (FILE, "\n");                                           \
    9494  } while (0)
    9595
    96 /* Define how the SPARC registers should be numbered for Dwarf output.
    97    The numbering provided here should be compatible with the native
    98    svr4 SDB debugger in the SPARC/svr4 reference port.  The numbering
    99    is as follows:
    100 
    101    Assembly name        gcc internal regno      Dwarf regno
    102    ----------------------------------------------------------
    103    g0-g7                0-7                     0-7
    104    o0-o7                8-15                    8-15
    105    l0-l7                16-23                   16-23
    106    i0-i7                24-31                   24-31
    107    f0-f31               32-63                   40-71
    108 */
    109 
    110 #define DBX_REGISTER_NUMBER(REGNO) ((REGNO) < 32 ? (REGNO) : (REGNO) + 8)
    111 
    11296/* A set of symbol definitions for assembly pseudo-ops which will
    11397   get us switched to various sections of interest.  These are used
    11498   in all places where we simply want to switch to a section, and
  • gcc/cp/ChangeLog

    diff -Naur gcc-4.3.3.orig/gcc/cp/ChangeLog gcc-4.3.3/gcc/cp/ChangeLog
    old new  
     12009-02-03  Paolo Bonzini  <bonzini@gnu.org>
     2
     3        PR c++/36897
     4        * pt.c (convert_nontype_argument_function): Expect expr to be an
     5        ADDR_EXPR.
     6
     7        PR c++/37314
     8        * typeck.c (merge_types): Call resolve_typename_type if only
     9        one type is a typename.
     10
     112009-02-02  Jason Merrill  <jason@redhat.com>
     12
     13        PR c++/39054
     14        * parser.c (cp_parser_unqualified_id): Don't wrap error_mark_node
     15        in BIT_NOT_EXPR.
     16
     172009-01-26  Jason Merrill  <jason@redhat.com>
     18
     19        PR c++/23287
     20        * parser.c (cp_parser_unqualified_id): In a template,
     21        accept ~identifier.
     22        * typeck.c (lookup_destructor): Handle IDENTIFIER_NODE.
     23
    1242009-01-24  Release Manager
    225
    326        * GCC 4.3.3 released.
  • gcc/cp/parser.c

    diff -Naur gcc-4.3.3.orig/gcc/cp/parser.c gcc-4.3.3/gcc/cp/parser.c
    old new  
    37913791            parser->scope = NULL_TREE;
    37923792            parser->object_scope = NULL_TREE;
    37933793            parser->qualifying_scope = NULL_TREE;
     3794            if (processing_template_decl)
     3795              cp_parser_parse_tentatively (parser);
    37943796            type_decl
    37953797              = cp_parser_class_name (parser,
    37963798                                      /*typename_keyword_p=*/false,
     
    37993801                                      /*check_dependency=*/false,
    38003802                                      /*class_head_p=*/false,
    38013803                                      declarator_p);
     3804            if (processing_template_decl
     3805                && ! cp_parser_parse_definitely (parser))
     3806              {
     3807                /* We couldn't find a type with this name, so just accept
     3808                   it and check for a match at instantiation time.  */
     3809                type_decl = cp_parser_identifier (parser);
     3810                if (type_decl != error_mark_node)
     3811                  type_decl = build_nt (BIT_NOT_EXPR, type_decl);
     3812                return type_decl;
     3813              }
    38023814          }
    38033815        /* If an error occurred, assume that the name of the
    38043816           destructor is the same as the name of the qualifying
  • gcc/cp/pt.c

    diff -Naur gcc-4.3.3.orig/gcc/cp/pt.c gcc-4.3.3/gcc/cp/pt.c
    old new  
    45554555      expr = convert_nontype_argument_function (type, expr);
    45564556      if (!expr || expr == error_mark_node)
    45574557        return expr;
     4558
     4559      if (TREE_CODE (expr) != ADDR_EXPR)
     4560        {
     4561          error ("%qE is not a valid template argument for type %qT", expr, type);
     4562          error ("it must be the address of a function with external linkage");
     4563          return NULL_TREE;
     4564        }
    45584565    }
    45594566  /* [temp.arg.nontype]/5, bullet 5
    45604567
  • gcc/cp/typeck.c

    diff -Naur gcc-4.3.3.orig/gcc/cp/typeck.c gcc-4.3.3/gcc/cp/typeck.c
    old new  
    608608
    609609  code1 = TREE_CODE (t1);
    610610  code2 = TREE_CODE (t2);
     611  if (code1 != code2)
     612    {
     613      gcc_assert (code1 == TYPENAME_TYPE || code2 == TYPENAME_TYPE);
     614      if (code1 == TYPENAME_TYPE)
     615        {
     616          t1 = resolve_typename_type (t1, /*only_current_p=*/true);
     617          code1 = TREE_CODE (t1);
     618        }
     619      else
     620        {
     621          t2 = resolve_typename_type (t2, /*only_current_p=*/true);
     622          code2 = TREE_CODE (t2);
     623        }
     624    }
    611625
    612626  switch (code1)
    613627    {
     
    20342048  return result;
    20352049}
    20362050
    2037 /* Return the destructor denoted by OBJECT.SCOPE::~DTOR_NAME, or, if
    2038    SCOPE is NULL, by OBJECT.~DTOR_NAME.  */
     2051/* Return the destructor denoted by OBJECT.SCOPE::DTOR_NAME, or, if
     2052   SCOPE is NULL, by OBJECT.DTOR_NAME, where DTOR_NAME is ~type.  */
    20392053
    20402054static tree
    20412055lookup_destructor (tree object, tree scope, tree dtor_name)
     
    20502064             scope, dtor_type);
    20512065      return error_mark_node;
    20522066    }
    2053   if (!DERIVED_FROM_P (dtor_type, TYPE_MAIN_VARIANT (object_type)))
     2067  if (TREE_CODE (dtor_type) == IDENTIFIER_NODE)
     2068    {
     2069      /* In a template, names we can't find a match for are still accepted
     2070         destructor names, and we check them here.  */
     2071      if (check_dtor_name (object_type, dtor_type))
     2072        dtor_type = object_type;
     2073      else
     2074        {
     2075          error ("object type %qT does not match destructor name ~%qT",
     2076                 object_type, dtor_type);
     2077          return error_mark_node;
     2078        }
     2079     
     2080    }
     2081  else if (!DERIVED_FROM_P (dtor_type, TYPE_MAIN_VARIANT (object_type)))
    20542082    {
    20552083      error ("the type being destroyed is %qT, but the destructor refers to %qT",
    20562084             TYPE_MAIN_VARIANT (object_type), dtor_type);
  • gcc/doc/invoke.texi

    diff -Naur gcc-4.3.3.orig/gcc/doc/invoke.texi gcc-4.3.3/gcc/doc/invoke.texi
    old new  
    54065406This option implies @option{-fmerge-constants}.  In addition to
    54075407@option{-fmerge-constants} this considers e.g.@: even constant initialized
    54085408arrays or initialized constant variables with integral or floating point
    5409 types.  Languages like C or C++ require each non-automatic variable to
    5410 have distinct location, so using this option will result in non-conforming
     5409types.  Languages like C or C++ require each variable, including multiple
     5410instances of the same variable in recursive calls, to have distinct locations,
     5411so using this option will result in non-conforming
    54115412behavior.
    54125413
    54135414@item -fmodulo-sched
  • gcc/fold-const.c

    diff -Naur gcc-4.3.3.orig/gcc/fold-const.c gcc-4.3.3/gcc/fold-const.c
    old new  
    85198519    } /* switch (code) */
    85208520}
    85218521
     8522
     8523/* If the operation was a conversion do _not_ mark a resulting constant
     8524   with TREE_OVERFLOW if the original constant was not.  These conversions
     8525   have implementation defined behavior and retaining the TREE_OVERFLOW
     8526   flag here would confuse later passes such as VRP.  */
     8527tree
     8528fold_unary_ignore_overflow (enum tree_code code, tree type, tree op0)
     8529{
     8530  tree res = fold_unary (code, type, op0);
     8531  if (res
     8532      && TREE_CODE (res) == INTEGER_CST
     8533      && TREE_CODE (op0) == INTEGER_CST
     8534      && (code == NOP_EXPR || code == CONVERT_EXPR))
     8535    TREE_OVERFLOW (res) = TREE_OVERFLOW (op0);
     8536
     8537  return res;
     8538}
     8539
    85228540/* Fold a binary expression of code CODE and type TYPE with operands
    85238541   OP0 and OP1, containing either a MIN-MAX or a MAX-MIN combination.
    85248542   Return the folded expression if folding is successful.  Otherwise,
     
    1167311691
    1167411692    case RSHIFT_EXPR:
    1167511693      /* Optimize -1 >> x for arithmetic right shifts.  */
    11676       if (integer_all_onesp (arg0) && !TYPE_UNSIGNED (type))
     11694      if (integer_all_onesp (arg0) && !TYPE_UNSIGNED (type)
     11695          && tree_expr_nonnegative_p (arg1))
    1167711696        return omit_one_operand (type, arg0, arg1);
    1167811697      /* ... fall through ...  */
    1167911698
  • gcc/fortran/ChangeLog

    diff -Naur gcc-4.3.3.orig/gcc/fortran/ChangeLog gcc-4.3.3/gcc/fortran/ChangeLog
    old new  
     12009-01-26  Paul Thomas  <pault@gcc.gnu.org>
     2
     3        PR fortran/38907
     4        Backport from trunk
     5        * resolve.c (check_host_association): Remove the matching to
     6        correct an incorrect host association and use manipulation of
     7        the expression instead.
     8
     92009-01-26  Mikael Morin  <mikael.morin@tele2.fr>
     10
     11        PR fortran/38859
     12        Backport from trunk
     13        * simplify.c (simplify_bound): Don't use array specification
     14        if variable or component has subsequent references.
     15
     162009-01-26  Paul Thomas  <pault@gcc.gnu.org>
     17
     18        PR fortran/38657
     19        Backport from trunk.
     20        * module.c (write_common_0): Add argument 'this_module' and
     21        check that non-use associated common blocks are written first.
     22        (write_common): Call write_common_0 twice, once with true and
     23        then with false.
     24
     252009-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
     26
     27        PR fortran/38672
     28        Backport from trunk.
     29        * resolve.c (resolve_symbol):  Check for the
     30        presence of derived->ns->proc_name before
     31        accessing derived->ns->proc_name->attr.flavor .
     32
    1332009-01-24  Release Manager
    234
    335        * GCC 4.3.3 released.
  • gcc/fortran/module.c

    diff -Naur gcc-4.3.3.orig/gcc/fortran/module.c gcc-4.3.3/gcc/fortran/module.c
    old new  
    39923992/* Write a common block to the module -- recursive helper function.  */
    39933993
    39943994static void
    3995 write_common_0 (gfc_symtree *st)
     3995write_common_0 (gfc_symtree *st, bool this_module)
    39963996{
    39973997  gfc_common_head *p;
    39983998  const char * name;
     
    40044004  if (st == NULL)
    40054005    return;
    40064006
    4007   write_common_0 (st->left);
     4007  write_common_0 (st->left, this_module);
    40084008
    40094009  /* We will write out the binding label, or the name if no label given.  */
    40104010  name = st->n.common->name;
     
    40234023      w = (c < 0) ? w->left : w->right;
    40244024    }
    40254025
     4026  /* Give priority to commons that are not use associated.  */
     4027  if (this_module && p->use_assoc)
     4028    write_me = false;
     4029
    40264030  if (write_me)
    40274031    {
    40284032      /* Write the common to the module.  */
     
    40434047
    40444048      /* Record that we have written this common.  */
    40454049      w = gfc_getmem (sizeof (struct written_common));
    4046       w->name = name;
    40474050      w->label = label;
     4051      w->name = name;
    40484052      gfc_insert_bbt (&written_commons, w, compare_written_commons);
    40494053    }
    40504054
    4051   write_common_0 (st->right);
     4055  write_common_0 (st->right, this_module);
    40524056}
    40534057
    40544058
     
    40594063write_common (gfc_symtree *st)
    40604064{
    40614065  written_commons = NULL;
    4062   write_common_0 (st);
     4066  write_common_0 (st, true);
     4067  write_common_0 (st, false);
    40634068  free_written_common (written_commons);
    40644069  written_commons = NULL;
    40654070}
  • gcc/fortran/resolve.c

    diff -Naur gcc-4.3.3.orig/gcc/fortran/resolve.c gcc-4.3.3/gcc/fortran/resolve.c
    old new  
    41894189/* Checks to see that the correct symbol has been host associated.
    41904190   The only situation where this arises is that in which a twice
    41914191   contained function is parsed after the host association is made.
    4192    Therefore, on detecting this, the line is rematched, having got
    4193    rid of the existing references and actual_arg_list.  */
     4192   Therefore, on detecting this, change the symbol in the expression
     4193   and convert the array reference into an actual arglist if the old
     4194   symbol is a variable.  */
    41944195static bool
    41954196check_host_association (gfc_expr *e)
    41964197{
    41974198  gfc_symbol *sym, *old_sym;
    4198   locus temp_locus;
    4199   gfc_expr *expr;
     4199  gfc_symtree *st;
    42004200  int n;
     4201  gfc_ref *ref;
     4202  gfc_actual_arglist *arg, *tail;
    42014203  bool retval = e->expr_type == EXPR_FUNCTION;
    42024204
    42034205  /*  If the expression is the result of substitution in
     
    42134215  if (gfc_current_ns->parent
    42144216        && old_sym->ns != gfc_current_ns)
    42154217    {
     4218      /* Use the 'USE' name so that renamed module symbols are
     4219         correctly handled.  */
    42164220      gfc_find_symbol (e->symtree->name, gfc_current_ns, 1, &sym);
     4221
    42174222      if (sym && old_sym != sym
    42184223              && sym->ts.type == old_sym->ts.type
    42194224              && sym->attr.flavor == FL_PROCEDURE
    42204225              && sym->attr.contained)
    42214226        {
    4222           temp_locus = gfc_current_locus;
    4223           gfc_current_locus = e->where;
    4224 
    4225           gfc_buffer_error (1);
    4226 
    4227           gfc_free_ref_list (e->ref);
    4228           e->ref = NULL;
    4229 
    4230           if (retval)
    4231             {
    4232               gfc_free_actual_arglist (e->value.function.actual);
    4233               e->value.function.actual = NULL;
    4234             }
    4235 
     4227          /* Clear the shape, since it might not be valid.  */
    42364228          if (e->shape != NULL)
    42374229            {
    42384230              for (n = 0; n < e->rank; n++)
     
    42414233              gfc_free (e->shape);
    42424234            }
    42434235
    4244 /* TODO - Replace this gfc_match_rvalue with a straight replacement of
    4245    actual arglists for function to function substitutions and with a
    4246    conversion of the reference list to an actual arglist in the case of
    4247    a variable to function replacement.  This should be quite easy since
    4248    only integers and vectors can be involved.  */           
    4249           gfc_match_rvalue (&expr);
    4250           gfc_clear_error ();
    4251           gfc_buffer_error (0);
     4236          /* Give the symbol a symtree in the right place!  */
     4237          gfc_get_sym_tree (sym->name, gfc_current_ns, &st);
     4238          st->n.sym = sym;
     4239
     4240          if (old_sym->attr.flavor == FL_PROCEDURE)
     4241            {
     4242              /* Original was function so point to the new symbol, since
     4243                 the actual argument list is already attached to the
     4244                 expression. */
     4245              e->value.function.esym = NULL;
     4246              e->symtree = st;
     4247            }
     4248          else
     4249            {
     4250              /* Original was variable so convert array references into
     4251                 an actual arglist. This does not need any checking now
     4252                 since gfc_resolve_function will take care of it.  */
     4253              e->value.function.actual = NULL;
     4254              e->expr_type = EXPR_FUNCTION;
     4255              e->symtree = st;
     4256
     4257              /* Ambiguity will not arise if the array reference is not
     4258                 the last reference.  */
     4259              for (ref = e->ref; ref; ref = ref->next)
     4260                if (ref->type == REF_ARRAY && ref->next == NULL)
     4261                  break;
    42524262
    4253           gcc_assert (expr && sym == expr->symtree->n.sym);
     4263              gcc_assert (ref->type == REF_ARRAY);
    42544264
    4255           *e = *expr;
    4256           gfc_free (expr);
    4257           sym->refs++;
     4265              /* Grab the start expressions from the array ref and
     4266                 copy them into actual arguments.  */
     4267              for (n = 0; n < ref->u.ar.dimen; n++)
     4268                {
     4269                  arg = gfc_get_actual_arglist ();
     4270                  arg->expr = gfc_copy_expr (ref->u.ar.start[n]);
     4271                  if (e->value.function.actual == NULL)
     4272                    tail = e->value.function.actual = arg;
     4273                  else
     4274                    {
     4275                      tail->next = arg;
     4276                      tail = arg;
     4277                    }
     4278                }
    42584279
    4259           gfc_current_locus = temp_locus;
     4280              /* Dump the reference list and set the rank.  */
     4281              gfc_free_ref_list (e->ref);
     4282              e->ref = NULL;
     4283              e->rank = sym->as ? sym->as->rank : 0;
     4284            }
     4285
     4286          gfc_resolve_expr (e);
     4287          sym->refs++;
    42604288        }
    42614289    }
    42624290  /* This might have changed!  */
     
    81168144     module function and is not PRIVATE.  */
    81178145  if (sym->ts.type == BT_DERIVED
    81188146        && sym->ts.derived->attr.use_assoc
     8147        && sym->ns->proc_name
    81198148        && sym->ns->proc_name->attr.flavor == FL_MODULE)
    81208149    {
    81218150      gfc_symbol *ds;
  • gcc/fortran/simplify.c

    diff -Naur gcc-4.3.3.orig/gcc/fortran/simplify.c gcc-4.3.3/gcc/fortran/simplify.c
    old new  
    21042104            case AR_FULL:
    21052105              /* We're done because 'as' has already been set in the
    21062106                 previous iteration.  */
    2107               goto done;
     2107              if (!ref->next)
     2108                goto done;
     2109
     2110            /* Fall through.  */
    21082111
    21092112            case AR_SECTION:
    21102113            case AR_UNKNOWN:
  • gcc/gimplify.c

    diff -Naur gcc-4.3.3.orig/gcc/gimplify.c gcc-4.3.3/gcc/gimplify.c
    old new  
    32063206        if (valid_const_initializer
    32073207            && num_nonzero_elements > 1
    32083208            && TREE_READONLY (object)
    3209             && TREE_CODE (object) == VAR_DECL)
     3209            && TREE_CODE (object) == VAR_DECL
     3210            && (flag_merge_constants >= 2 || !TREE_ADDRESSABLE (object)))
    32103211          {
    32113212            if (notify_temp_creation)
    32123213              return GS_ERROR;
  • gcc/testsuite/ChangeLog

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/ChangeLog gcc-4.3.3/gcc/testsuite/ChangeLog
    old new  
     12009-02-03  Paolo Bonzini  <bonzini@gnu.org>
     2
     3        PR c++/36897
     4        * g++.dg/template/func2.C: New test.
     5
     6        PR c++/37314
     7        * g++.dg/template/typename15.C: New.
     8        * g++.dg/template/typename16.C: New.
     9
     102009-02-02  Jason Merrill  <jason@redhat.com>
     11
     12        PR c++/39054
     13        * g++.dg/parse/dtor14.C: New test.
     14
     152009-01-30  H.J. Lu  <hongjiu.lu@intel.com>
     16
     17        Backport from mainline:
     18        2009-01-14  Jakub Jelinek  <jakub@redhat.com>
     19
     20        PR rtl-optimization/38245
     21        * gcc.dg/pr38245-3.c: New test.
     22        * gcc.dg/pr38245-3.h: New file.
     23        * gcc.dg/pr38245-4.c: New file.
     24        * gcc.dg/pr38364.c: New test.
     25
     262009-01-30  Richard Guenther  <rguenther@suse.de>
     27
     28        PR tree-optimization/39041
     29        * gcc.c-torture/compile/pr39041.c: New testcase.
     30
     312009-01-30  H.J. Lu  <hongjiu.lu@intel.com>
     32
     33        Backport from mainline:
     34        2009-01-16  Jakub Jelinek  <jakub@redhat.com>
     35
     36        PR tree-optimization/38789
     37        * gcc.c-torture/compile/pr38789.c: New test.
     38
     392009-01-30  H.J. Lu  <hongjiu.lu@intel.com>
     40
     41        Backport from mainline:
     42        2009-01-27  Richard Guenther  <rguenther@suse.de>
     43
     44        PR tree-optimization/38503
     45        * g++.dg/warn/Wstrict-aliasing-bogus-placement-new.C: New testcase.
     46
     47        2009-01-26  Richard Guenther  <rguenther@suse.de>
     48
     49        PR tree-optimization/38745
     50        * g++.dg/torture/pr38745.C: New testcase.
     51
     52        2009-01-26  Richard Guenther  <rguenther@suse.de>
     53
     54        PR middle-end/38851
     55        * g++.dg/warn/Wuninitialized-1.C: New testcase.
     56
     57        2009-01-20  Andrew Pinski  <andrew_pinski@playstation.sony.com>
     58                    Richard Guenther  <rguenther@suse.de>
     59
     60        PR tree-optimization/38747
     61        PR tree-optimization/38748
     62        * gcc.dg/tree-ssa/struct-aliasing-1.c: New test.
     63        * gcc.c-torture/execute/struct-aliasing-1.c: Likewise.
     64
     652009-01-29  H.J. Lu  <hongjiu.lu@intel.com>
     66
     67        Backport from mainline:
     68        2009-01-28  Richard Guenther  <rguenther@suse.de>
     69
     70        PR middle-end/38908
     71        * g++.dg/warn/Wuninitialized-2.C: New testcase.
     72
     73        2009-01-27  Daniel Kraft  <d@domob.eu>
     74
     75        PR fortran/38883
     76        * gfortran.dg/mvbits_6.f90:  New test.
     77        * gfortran.dg/mvbits_7.f90:  New test.
     78        * gfortran.dg/mvbits_8.f90:  New test.
     79
     80        2009-01-21  Daniel Kraft  <d@domob.eu>
     81
     82        PR fortran/38887
     83        * gfortran.dg/mvbits_5.f90:  New test.
     84
     852009-01-29  H.J. Lu  <hongjiu.lu@intel.com>
     86
     87        Backport from mainline:
     88        2009-01-29  Steve Ellcey  <sje@cup.hp.com>
     89
     90        PR middle-end/38857
     91        * gcc.c-torture/compile/pr38857.c: New test.
     92
     93        2009-01-28  Richard Guenther  <rguenther@suse.de>
     94
     95        PR tree-optimization/38926
     96        * gcc.c-torture/compile/pr38926.c: New testcase.
     97
     982009-01-29  Uros Bizjak  <ubizjak@gmail.com>
     99
     100        Backport from mainline:
     101        2009-01-28  Uros Bizjak  <ubizjak@gmail.com>
     102
     103        PR target/38988
     104        * gcc.target/i386/pr38988.c: New test.
     105
     106        2009-01-27  Uros Bizjak  <ubizjak@gmail.com>
     107
     108        PR middle-end/38969
     109        * gcc.c-torture/execute/pr38969.c: New test.
     110
     1112009-01-27  Steve Ellcey  <sje@cup.hp.com>
     112
     113        PR middle-end/38615
     114        * gcc.dg/pr38615.c: New test.
     115
     1162009-01-27  Uros Bizjak  <ubizjak@gmail.com>
     117
     118        Backport from mainline:
     119        2009-01-07  Uros Bizjak  <ubizjak@gmail.com>
     120
     121        PR target/38706
     122        * g++.dg/other/pr38706.C: New test.
     123
     1242009-01-26  Jason Merrill  <jason@redhat.com>
     125
     126        PR c++/23287
     127        * g++.dg/template/dtor5.C: New test.
     128
     1292009-01-26  H.J. Lu  <hongjiu.lu@intel.com>
     130
     131        Backport from mainline:
     132        2008-07-17  H.J. Lu  <hongjiu.lu@intel.com>
     133
     134        PR testsuite/36443
     135        * objc.dg/gnu-encoding/gnu-encoding.exp: Temporarily unset
     136        GCC_EXEC_PREFIX from environment when running $HOSTCC.
     137
     1382008-01-26  Paolo Bonzini  <bonzini@gnu.org>
     139
     140        PR tree-optimization/38932
     141        * gcc.dg/pr38932.c: New.
     142
     1432009-01-26  Paul Thomas  <pault@gcc.gnu.org>
     144
     145        PR fortran/38907
     146        Backport from trunk
     147        * gfortran.dg/host_assoc_function_7.f90: New test.
     148
     1492009-01-26  Mikael Morin  <mikael.morin@tele2.fr>
     150
     151        PR fortran/38859
     152        Backport from trunk
     153        * gfortran.dg/bound_5.f90: New test.
     154
     1552009-01-26  Paul Thomas  <pault@gcc.gnu.org>
     156
     157        PR fortran/38657
     158        Backport from trunk.
     159        * gfortran.dg/module_commons_3.f90: Reapply.
     160
     1612009-01-25  Uros Bizjak  <ubizjak@gmail.com>
     162
     163        Backport from mainline:
     164        2009-01-22  Uros Bizjak  <ubizjak@gmail.com>
     165
     166        PR target/38931
     167        * gcc.target/i386/pr38931.c: New test.
     168
     1692009-01-25  Richard Guenther  <rguenther@suse.de>
     170
     171        Backport from mainline:
     172        2008-12-02  Richard Guenther  <rguenther@suse.de>
     173
     174        PR tree-optimization/38359
     175        * gcc.c-torture/compile/pr38359.c: New testcase.
     176        * gcc.c-torture/execute/shiftopt-1.c: Adjust.
     177
     1782009-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
     179
     180        PR fortran/38672
     181        Backport from trunk.
     182        * gfortran.dg/host_assoc_blockdata_1.f90:  New test.
     183        * gfortran.dg/host_assoc_blockdata_2.f90:  New test.
     184
     1852009-01-24  H.J. Lu  <hongjiu.lu@intel.com>
     186
     187        Backport from mainline:
     188        2009-01-20  Kees Cook  <kees@ubuntu.com>
     189                    H.J. Lu  <hongjiu.lu@intel.com>
     190
     191        PR target/38902
     192        * gcc.dg/pr38902.c: New.
     193
     1942009-01-24  H.J. Lu  <hongjiu.lu@intel.com>
     195
     196        Backport from mainline:
     197        2008-01-20  Paolo Bonzini  <bonzini@gnu.org>
     198
     199        PR target/38868
     200        * gfortran.dg/pr38868.f: New testcase.
     201
    12022009-01-24  Release Manager
    2203
    3204        * GCC 4.3.3 released.
     
    89290
    90291        Backport from mainline:
    91292        2008-12-29  Dorit Nuzman  <dorit@il.ibm.com>
    92                     Ira Rosen  <irar@il.ibm.com>
     293                    Ira Rosen  <irar@il.ibm.com>
    93294
    94295        PR tree-optimization/38529
    95296        * gcc.dg/vect/pr38529.c: New test.
     
    426627
    4276282008-11-14  Paul Thomas  <pault@gcc.gnu.org>
    428629
    429         PR fortran/37836
    430         * gfortran.dg/minmaxval_1.f90: New test.
     630        PR fortran/37836
     631        * gfortran.dg/minmaxval_1.f90: New test.
    431632
    4326332008-11-13  Jason Merrill  <jason@redhat.com>
    433634
  • gcc/testsuite/gcc.c-torture/compile/pr38359.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/compile/pr38359.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/compile/pr38359.c
    old new  
     1unsigned _ov_64_seek_lap (_Bool x1, _Bool x2, _Bool x3)
     2{
     3  unsigned ltmp_3978_7__PHI_TEMPORARY;
     4  signed ltmp_4011_7;
     5
     6  if (!x1 || !x2)
     7    while (1) ;
     8
     9  if (x3)
     10    ltmp_3978_7__PHI_TEMPORARY = 0xffffff7e;
     11  else
     12    ltmp_3978_7__PHI_TEMPORARY = 1;
     13
     14  ltmp_4011_7 = -1;
     15  return ltmp_4011_7 >> ltmp_3978_7__PHI_TEMPORARY;
     16}
     17
  • gcc/testsuite/gcc.c-torture/compile/pr38789.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/compile/pr38789.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/compile/pr38789.c
    old new  
     1/* PR tree-optimization/38789 */
     2
     3void
     4baz (int v)
     5{
     6  unsigned a = (v == 1) ? 1 : 2;
     7
     8  if (__builtin_constant_p (a))
     9    asm volatile ("# constant %0" :: "i" (a));
     10  else
     11    asm volatile ("# register %0" :: "r" (a));
     12
     13  a = 6;
     14  if (__builtin_constant_p (a))
     15    asm volatile ("# constant %0" :: "i" (a));
     16  else
     17    asm volatile ("# register %0" :: "r" (a));
     18}
  • gcc/testsuite/gcc.c-torture/compile/pr38857.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/compile/pr38857.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/compile/pr38857.c
    old new  
     1static const int vs_total_ac_bits = 2680;
     2typedef struct EncBlockInfo {
     3      short mb[64];
     4      unsigned char next[64];
     5} EncBlockInfo;
     6inline void dv_guess_qnos(EncBlockInfo* blks, int* qnos) {
     7      int size[5];
     8      int j, k, a, prev;
     9      EncBlockInfo* b;
     10      for(a=2; a==2 || vs_total_ac_bits < size[0]; a+=a){
     11         for (j=0; j<6*5; j++, b++) {
     12             for (k= b->next[prev]; k<64; k= b->next[k]) {
     13                 if(b->mb[k] < a && b->mb[k] > -a){
     14                     b->next[prev] = b->next[k];
     15                 }
     16                 else{
     17                     prev = k;
     18                 }
     19             }
     20         }
     21     }
     22}
  • gcc/testsuite/gcc.c-torture/compile/pr38926.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/compile/pr38926.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/compile/pr38926.c
    old new  
     1static inline int foo (unsigned _si1)
     2{
     3  if (_si1 != 0)
     4    if (_si1 > 2147483647)
     5      return 1;
     6  return 0;
     7}
     8
     9static inline unsigned bar (unsigned _left, int _right)
     10{
     11  return (unsigned) _right >= 8 ? 1 : _left >> _right;
     12}
     13
     14unsigned g_2;
     15unsigned g_67;
     16volatile unsigned g_162;
     17
     18static inline int func_62 (unsigned p_63)
     19{
     20  p_63 = g_2 & g_67;
     21  if (g_2)
     22    ;
     23  else if (p_63)
     24    return 1;
     25  g_67 = bar (p_63, g_2);
     26  return 0;
     27}
     28
     29unsigned baz (void)
     30{
     31  if (g_2)
     32    for (; g_2 <= -16; g_2 = foo (g_2))
     33      {
     34        for (; g_162; g_162)
     35          func_62 (func_62 (0));
     36        if (g_67)
     37          break;
     38      }
     39  return g_2;
     40}
     41
  • gcc/testsuite/gcc.c-torture/compile/pr39041.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/compile/pr39041.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/compile/pr39041.c
    old new  
     1int test_bit(int nr, void *addr)
     2{
     3  int *a = (int *)addr;
     4  int mask;
     5  a += nr;
     6  mask = 1 << nr;
     7  return mask & *a;
     8}
     9struct {
     10    struct {
     11        int disabled;
     12    } *data[1];
     13} trace;
     14struct {
     15    unsigned bits[1];
     16} cpumask;
     17void inc(int *);
     18void dec(int *);
     19int foo(void)
     20{
     21  int cpu;
     22  for (cpu = 0; cpu < 1; cpu++) {
     23      if (test_bit(cpu, cpumask.bits))
     24        inc(&trace.data[cpu]->disabled);
     25      if (!test_bit(cpu, cpumask.bits))
     26        dec(&trace.data[cpu]->disabled);
     27  }
     28}
  • gcc/testsuite/gcc.c-torture/execute/pr38969.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/execute/pr38969.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/execute/pr38969.c
    old new  
     1__complex__ float
     2__attribute__ ((noinline)) foo (__complex__ float x)
     3{
     4  return x;
     5}
     6
     7__complex__ float
     8__attribute__ ((noinline)) bar (__complex__ float x)
     9{
     10  return foo (x);
     11}
     12
     13int main()
     14{
     15  __complex__ float a, b;
     16  __real__ a = 9;
     17  __imag__ a = 42;
     18
     19  b = bar (a);
     20
     21  if (a != b)
     22    abort ();
     23
     24  return 0;
     25}
  • gcc/testsuite/gcc.c-torture/execute/shiftopt-1.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/execute/shiftopt-1.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/execute/shiftopt-1.c
    old new  
    4343
    4444  if (0 >> x != 0)
    4545    link_error ();
    46 
    47   if (-1 >> x != -1)
    48     link_error ();
    49 
    50   if (~0 >> x != ~0)
    51     link_error ();
    5246}
    5347
    5448int
  • gcc/testsuite/gcc.c-torture/execute/struct-aliasing-1.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.c-torture/execute/struct-aliasing-1.c gcc-4.3.3/gcc/testsuite/gcc.c-torture/execute/struct-aliasing-1.c
    old new  
     1struct S { float f; };
     2int __attribute__((noinline))
     3foo (int *r, struct S *p)
     4{
     5  int *q = (int *)&p->f;
     6  int i = *q;
     7  *r = 0;
     8  return i + *q;
     9}
     10extern void abort (void);
     11int main()
     12{
     13  int i = 1;
     14  if (foo (&i, (struct S *)&i) != 1)
     15    abort ();
     16  return (0);
     17}
  • gcc/testsuite/gcc.dg/pr38245-3.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/pr38245-3.c gcc-4.3.3/gcc/testsuite/gcc.dg/pr38245-3.c
    old new  
     1/* PR rtl-optimization/38245 */
     2/* { dg-do run } */
     3/* { dg-additional-sources "pr38245-4.c" } */
     4/* { dg-options "-O2" } */
     5
     6#include "pr38245-3.h"
     7
     8extern void abort (void);
     9
     10struct A { int i, j; union { short s[4]; long long l; }; char pad[512]; } a;
     11int globv = 6;
     12
     13void __attribute__((noinline))
     14f1 (void)
     15{
     16  a.s[2] = b1 (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
     17               6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21);
     18  a.l = 6;
     19}
     20
     21void __attribute__((noinline))
     22f2 (void)
     23{
     24  a.s[2] = b2 (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
     25               6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21);
     26  a.l = 6;
     27}
     28
     29void __attribute__((noinline))
     30f3 (void)
     31{
     32  struct B b = { 30, 31, { 32, 33 } };
     33  a.s[2] = b3 (6, 7, 8, 9, 10, 11, 12, b, 14, b, 16, b, 18, 19, 20, 21,
     34               6, b, 8, b, 10, 11, 12, 13, 14, b, 16, b, 18, 19, 20, 21);
     35  a.l = 6;
     36}
     37
     38void __attribute__((noinline))
     39f4 (void)
     40{
     41  struct B b = { 30, 31, { 32, 33 } };
     42  a.s[2] = b4 (6, 7, 8, 9, 10, 11, 12, b, 14, b, 16, b, 18, 19, 20, 21,
     43               6, b, 8, b, 10, 11, 12, 13, 14, b, 16, b, 18, 19, 20, 21);
     44  a.l = 6;
     45}
     46
     47void __attribute__((noinline))
     48f5 (void)
     49{
     50  a.s[2] = b5 (6.0, 7, 8, 9, 10, 11, 21.0, 22.0, 23.0);
     51  a.l = 6;
     52}
     53
     54void __attribute__((noinline))
     55f6 (void)
     56{
     57  a.s[2] = b6 (6.0, 7, 8, 9, 10, 11, 21.0, 22.0, 23.0);
     58  a.l = 6;
     59}
     60
     61void __attribute__((noinline))
     62f7 (void)
     63{
     64  a.s[2] = b7 (6, 7);
     65  a.l = 6;
     66}
     67
     68void __attribute__((noinline))
     69f8 (void)
     70{
     71  a.s[2] = b8 (6, 7);
     72  a.l = 6;
     73}
     74
     75void __attribute__((noinline))
     76f9 (void)
     77{
     78  a.s[2] = b9 (6, 7, 8, 9, 10, 11, 12);
     79  a.l = 6;
     80}
     81
     82void __attribute__((noinline))
     83f10 (void)
     84{
     85  a.s[2] = b10 (6, 7, 8, 9, 10, 11, 12);
     86  a.l = 6;
     87}
     88
     89int
     90main (void)
     91{
     92  char buf[256];
     93  int i;
     94  for (i = 0; i < (int) sizeof buf; i++)
     95    buf[i] = i;
     96  asm volatile ("" : : "r" (buf) : "memory");
     97  f1 ();
     98  f2 ();
     99  f3 ();
     100  f4 ();
     101  f5 ();
     102  f6 ();
     103  f7 ();
     104  f8 ();
     105  f9 ();
     106  f10 ();
     107  asm volatile ("" : : "r" (buf) : "memory");
     108  for (i = 0; i < (int) sizeof buf; i++)
     109    if (buf[i] != (char) i)
     110      abort ();
     111  return 0;
     112}
  • gcc/testsuite/gcc.dg/pr38245-3.h

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/pr38245-3.h gcc-4.3.3/gcc/testsuite/gcc.dg/pr38245-3.h
    old new  
     1/* PR rtl-optimization/38245 */
     2
     3struct B { long a, b; char p[32]; };
     4extern int globv;
     5
     6extern int b1 (long long, long, long, long, long, long, long, long,
     7               long long, long, long, long, long, long, long, long,
     8               long long, long, long, long, long, long, long, long,
     9               long long, long, long, long, long, long, long, long)
     10     __attribute__((pure, noinline));
     11extern int b2 (long long, long, long, long, long, long, long, long,
     12               long long, long, long, long, long, long, long, long,
     13               long long, long, long, long, long, long, long, long,
     14               long long, long, long, long, long, long, long, long)
     15     __attribute__((const, noinline));
     16extern int b3 (long long, long, long, long, long, long, long, struct B,
     17               long long, struct B, long, struct B, long, long, long, long,
     18               long long, struct B, long, struct B, long, long, long, long,
     19               long long, struct B, long, struct B, long, long, long, long)
     20     __attribute__((pure, noinline));
     21extern int b4 (long long, long, long, long, long, long, long, struct B,
     22               long long, struct B, long, struct B, long, long, long, long,
     23               long long, struct B, long, struct B, long, long, long, long,
     24               long long, struct B, long, struct B, long, long, long, long)
     25     __attribute__((const, noinline));
     26extern int b5 () __attribute__((pure, noinline));
     27extern int b6 () __attribute__((const, noinline));
     28extern int b7 (int, int)
     29     __attribute__((pure, noinline));
     30extern int b8 (int, int)
     31     __attribute__((const, noinline));
     32extern int b9 (int, int, int, int, int, int, int)
     33     __attribute__((pure, noinline));
     34extern int b10 (int, int, int, int, int, int, int)
     35     __attribute__((const, noinline));
  • gcc/testsuite/gcc.dg/pr38245-4.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/pr38245-4.c gcc-4.3.3/gcc/testsuite/gcc.dg/pr38245-4.c
    old new  
     1/* PR rtl-optimization/38245 */
     2/* { dg-do compile } */
     3/* { dg-options "" } */
     4
     5#include "pr38245-3.h"
     6
     7int
     8b1 (long long a1, long a2, long a3, long a4,
     9    long a5, long a6, long a7, long a8,
     10    long long a9, long a10, long a11, long a12,
     11    long a13, long a14, long a15, long a16,
     12    long long a17, long a18, long a19, long a20,
     13    long a21, long a22, long a23, long a24,
     14    long long a25, long a26, long a27, long a28,
     15    long a29, long a30, long a31, long a32)
     16{
     17  return a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10
     18         + a11 + a12 + a13 + a14 + a15 + a16 + a17 + a18 + a19 + a20
     19         + a21 + a22 + a23 + a24 + a25 + a26 + a27 + a28 + a29 + a30
     20         + a31 + a32 + globv;
     21}
     22
     23int
     24b2 (long long a1, long a2, long a3, long a4,
     25    long a5, long a6, long a7, long a8,
     26    long long a9, long a10, long a11, long a12,
     27    long a13, long a14, long a15, long a16,
     28    long long a17, long a18, long a19, long a20,
     29    long a21, long a22, long a23, long a24,
     30    long long a25, long a26, long a27, long a28,
     31    long a29, long a30, long a31, long a32)
     32{
     33  return a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10
     34         + a11 + a12 + a13 + a14 + a15 + a16 + a17 + a18 + a19 + a20
     35         + a21 + a22 + a23 + a24 + a25 + a26 + a27 + a28 + a29 + a30
     36         + a31 + a32;
     37}
     38
     39int
     40b3 (long long a1, long a2, long a3, long a4,
     41    long a5, long a6, long a7, struct B a8,
     42    long long a9, struct B a10, long a11, struct B a12,
     43    long a13, long a14, long a15, long a16,
     44    long long a17, struct B a18, long a19, struct B a20,
     45    long a21, long a22, long a23, long a24,
     46    long long a25, struct B a26, long a27, struct B a28,
     47    long a29, long a30, long a31, long a32)
     48{
     49  return a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8.a + a9 + a10.a
     50         + a11 + a12.a + a13 + a14 + a15 + a16 + a17 + a18.a + a19 + a20.a
     51         + a21 + a22 + a23 + a24 + a25 + a26.a + a27 + a28.a + a29 + a30
     52         + a31 + a32 + globv;
     53}
     54
     55int
     56b4 (long long a1, long a2, long a3, long a4,
     57    long a5, long a6, long a7, struct B a8,
     58    long long a9, struct B a10, long a11, struct B a12,
     59    long a13, long a14, long a15, long a16,
     60    long long a17, struct B a18, long a19, struct B a20,
     61    long a21, long a22, long a23, long a24,
     62    long long a25, struct B a26, long a27, struct B a28,
     63    long a29, long a30, long a31, long a32)
     64{
     65  return a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8.a + a9 + a10.a
     66         + a11 + a12.a + a13 + a14 + a15 + a16 + a17 + a18.a + a19 + a20.a
     67         + a21 + a22 + a23 + a24 + a25 + a26.a + a27 + a28.a + a29 + a30
     68         + a31 + a32;
     69}
     70
     71int
     72b5 (double a1, int a2, int a3, int a4, int a5, int a6, double a7,
     73    double a8, double a9)
     74{
     75  return a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + globv;
     76}
     77
     78int
     79b6 (double a1, int a2, int a3, int a4, int a5, int a6, double a7,
     80    double a8, double a9)
     81{
     82  return a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9;
     83}
     84
     85int
     86b7 (int a1, int a2)
     87{
     88  return a1 + a2 + globv;
     89}
     90
     91int
     92b8 (int a1, int a2)
     93{
     94  return a1 + a2;
     95}
     96
     97int
     98b9 (int a1, int a2, int a3, int a4, int a5, int a6, int a7)
     99{
     100  return a1 + a2 + a3 + a4 + a5 + a6 + a7 + globv;
     101}
     102
     103int
     104b10 (int a1, int a2, int a3, int a4, int a5, int a6, int a7)
     105{
     106  return a1 + a2 + a3 + a4 + a5 + a6 + a7;
     107}
  • gcc/testsuite/gcc.dg/pr38364.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/pr38364.c gcc-4.3.3/gcc/testsuite/gcc.dg/pr38364.c
    old new  
     1/* PR middle-end/38364 */
     2/* { dg-do run } */
     3/* { dg-options "-O2 -ftrapv" } */
     4
     5extern void abort (void);
     6
     7static inline short
     8f1 (short x, short y)
     9{
     10  if (x > 0)
     11    {
     12      if (y > 0)
     13        {
     14          if (x > __SHRT_MAX__ / y)
     15            return x;
     16        }
     17      else if (y < (-__SHRT_MAX__ - 1) / x)
     18        return x;
     19    }
     20  else
     21    {
     22      if (y > 0)
     23        {
     24          if (x < (-__SHRT_MAX__ - 1) / y)
     25            return x;
     26        }
     27      else if (x != 0 && y < __SHRT_MAX__ / x)
     28        return x;
     29    }
     30  return x * y;
     31}
     32
     33static inline signed char
     34f2 (signed char x, signed char y)
     35{
     36  if (((x ^ y) & (((x ^ ((x ^ y) & (1 << (__CHAR_BIT__ - 1)))) - y) ^ y)) < 0)
     37    return x;
     38  return x - y;
     39}
     40
     41unsigned int v;
     42
     43int
     44f3 (int x, unsigned int y)
     45{
     46  f1 (1, 1);
     47  return 1;
     48}
     49
     50int
     51f4 (unsigned short x)
     52{
     53  v = x;
     54  return 1;
     55}
     56
     57int
     58f5 (int x)
     59{
     60  if (f2 (x, 1))
     61    f1 (1, f4 (1));
     62  return x;
     63}
     64
     65int
     66f6 (unsigned int x)
     67{
     68  f4 (x < (1 != f5 (0)));
     69  return x;
     70}
     71
     72int
     73main (void)
     74{
     75  f6 (1);
     76  if (v != 0)
     77    abort ();
     78  return 0;
     79}
  • gcc/testsuite/gcc.dg/pr38615.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/pr38615.c gcc-4.3.3/gcc/testsuite/gcc.dg/pr38615.c
    old new  
     1/* { dg-do run } */
     2
     3int t;
     4extern void abort (void);
     5
     6int f(int t, const int *a)
     7{
     8 const int b[] = { 1, 2, 3};
     9 if (!t)
     10   return f(1, b);
     11 return b == a;
     12}
     13
     14int main(void)
     15{
     16 if (f(0, 0))
     17   abort ();
     18 return 0;
     19}
  • gcc/testsuite/gcc.dg/pr38902.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/pr38902.c gcc-4.3.3/gcc/testsuite/gcc.dg/pr38902.c
    old new  
     1/* PR target/38902 */
     2/* { dg-do run } */
     3/* { dg-options "-O2 -fstack-protector" } */
     4/* { dg-require-effective-target fstack_protector } */
     5
     6#ifdef DEBUG
     7#include <stdio.h>
     8#define debug(format, args...) printf (format , ## args)
     9#else
     10extern int sprintf (char *, const char *, ...);
     11#define debug(format, args...)
     12#endif
     13
     14extern void abort (void);
     15
     16/*
     17
     18Copyright (C) 2009 Canonical, Ltd.
     19Author: Kees Cook <kees@ubuntu.com>
     20License: GPLv3
     21
     22http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38616
     23https://bugs.launchpad.net/ubuntu/+source/gcc-4.3/+bug/316019
     24http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38902
     25
     26gcc -O2 -fstack-protector truncate.c -o truncate
     27
     28    Broken:
     29
     30        Only the first operation fails, so create a new function for each test.
     31        Source must be local (literal or stack)
     32
     33        __builtin_memmove
     34        __builtin_memcpy
     35        __builtin_strcpy  (optimized to __builtin_memcpy?)
     36        sprintf (direct)  (optmized to __builtin_strcpy?)
     37        sprintf (via %s)  (optmized to __builtin_strcpy?)
     38
     39    OK:
     40        __builtin_strcat
     41        sprintf (complex format)
     42
     43 */
     44
     45char *heap = "1234567890abcdefghijklmnopqrstuvwxyz";
     46
     47int failed = 0;
     48
     49#define CHECK(count, a...) \
     50void test##count (void) \
     51{ \
     52  char *local = "1234567890abcdefghijklmnopqrstuvwxyz"; \
     53  char buffer[1024]=""; \
     54    a; \
     55    if (__builtin_strcmp(buffer, heap) == 0) { \
     56        debug("Okay(%d):\n\t%s\n", count, # a); \
     57    } \
     58    else { \
     59        debug("Failed(%d):\n\t%s\n", count, # a); \
     60        failed++; \
     61    } \
     62}
     63
     64
     65CHECK( 0, __builtin_memcpy (buffer, "1234567890abcdefghijklmnopqrstuvwxyz", __builtin_strlen("1234567890abcdefghijklmnopqrstuvwxyz")+1);                                        );
     66CHECK( 1, __builtin_memcpy (buffer, local, __builtin_strlen(local)+1);                );
     67CHECK( 2, __builtin_memcpy (buffer, heap, __builtin_strlen(heap)+1);                );
     68
     69CHECK( 3, __builtin_memmove (buffer, "1234567890abcdefghijklmnopqrstuvwxyz", __builtin_strlen("1234567890abcdefghijklmnopqrstuvwxyz")+1);                                       );
     70CHECK( 4, __builtin_memmove (buffer, local, __builtin_strlen(local)+1);               );
     71CHECK( 5, __builtin_memmove (buffer, heap, __builtin_strlen(heap)+1);               );
     72
     73CHECK( 6, __builtin_strcpy (buffer, "1234567890abcdefghijklmnopqrstuvwxyz");          );
     74CHECK( 7, __builtin_strcpy (buffer, local);                                      );
     75CHECK( 8, __builtin_strcpy (buffer, heap);                                      );
     76
     77CHECK( 9,  sprintf (buffer, "1234567890abcdefghijklmnopqrstuvwxyz");         );
     78CHECK(10,  sprintf (buffer, local);                                     );
     79CHECK(11,  sprintf (buffer, heap);                                     );
     80
     81CHECK(12,  sprintf (buffer, "%s", "1234567890abcdefghijklmnopqrstuvwxyz");   );
     82CHECK(13,  sprintf (buffer, "%s", local);                               );
     83CHECK(14,  sprintf (buffer, "%s", heap);                               );
     84
     85CHECK(15, __builtin_strcat (buffer, "1234567890abcdefghijklmnopqrstuvwxyz");          );
     86CHECK(16, __builtin_strcat (buffer, local);                                      );
     87CHECK(17, __builtin_strcat (buffer, heap);                                       );
     88
     89void mongoose(void)
     90{
     91  char buffer[1024]="";
     92  sprintf (buffer, "%s", "1234567890abcdefghijklmnopqrstuvwxyz");;
     93    if (__builtin_strcmp(buffer, heap) == 0) {
     94        debug("Okay(%d):\n\t%s\n", -1, "sprintf (buffer, \"%s\", \"1234567890abcdefghijklmnopqrstuvwxyz\");");
     95    }
     96    else {
     97        debug("Failed(%d):\n\t%s\n", -1, "sprintf (buffer, \"%s\", \"1234567890abcdefghijklmnopqrstuvwxyz\");");
     98        failed++;
     99    }
     100}
     101
     102int main (int argc, char *argv[])
     103{
     104  test0();
     105  test1();
     106  test2();
     107  test3();
     108  test4();
     109  test5();
     110  test6();
     111  test7();
     112  test8();
     113  test9();
     114  test10();
     115  test11();
     116
     117  // wtf, why are these different?!
     118  test12();
     119  mongoose();
     120
     121  test13();
     122  test14();
     123  test15();
     124  test16();
     125  test17();
     126
     127  if (failed)
     128    abort ();
     129
     130  return 0;
     131}
  • gcc/testsuite/gcc.dg/pr38932.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/pr38932.c gcc-4.3.3/gcc/testsuite/gcc.dg/pr38932.c
    old new  
     1/* { dg-do compile } */
     2/* { dg-options "-O2" } */
     3
     4/* This variable needed only to exercise FRE instead of CCP.  */
     5unsigned char g;
     6
     7extern void abort();
     8
     9void f (long long int p)
     10{
     11  g = 255;
     12  if (p >= (-9223372036854775807LL - 1) - (signed char) g)
     13    p = 1;
     14
     15  if (p)
     16    abort ();
     17}
     18
     19
  • gcc/testsuite/gcc.dg/tree-ssa/struct-aliasing-1.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.dg/tree-ssa/struct-aliasing-1.c gcc-4.3.3/gcc/testsuite/gcc.dg/tree-ssa/struct-aliasing-1.c
    old new  
     1/* { dg-do "compile" } */
     2/* { dg-options "-O2 -fdump-tree-fre" } */
     3
     4struct S { float f; };
     5int __attribute__((noinline))
     6foo (float *r, struct S *p)
     7{
     8  int *q = (int *)&p->f;
     9  int i = *q;
     10  *r = 0.0;
     11  return i + *q;
     12}
     13
     14/* { dg-final { scan-tree-dump-times "\\\*q" 1 "fre" } } */
     15/* { dg-final { cleanup-tree-dump "fre" } } */
  • gcc/testsuite/gcc.target/i386/pr38931.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.target/i386/pr38931.c gcc-4.3.3/gcc/testsuite/gcc.target/i386/pr38931.c
    old new  
     1/* { dg-do compile } */
     2/* { dg-options "-O2 -msse" } */
     3
     4typedef int __m64 __attribute__ ((__vector_size__ (8)));
     5
     6extern __m64 foo () ;
     7
     8void bar (const int input_bpl, const unsigned char *input,
     9          unsigned char *output, unsigned long x1)
     10{
     11  unsigned char *pix_end_ptr = output + x1 * 4;
     12  __m64 m_original = { 0, 0 };
     13  __m64 m_base_addr = __builtin_ia32_vec_init_v2si (0, input_bpl);
     14  __m64 m_addr = __builtin_ia32_paddd (m_original, m_base_addr);
     15  __m64 *a0 = (__m64 *) input;
     16
     17  for (; output < pix_end_ptr; output += 4)
     18    {
     19      a0 = (__m64 *) (input + __builtin_ia32_vec_ext_v2si (m_addr, 0));
     20      m_addr = foo ();
     21      __builtin_prefetch (a0, 0);
     22    }
     23}
  • gcc/testsuite/gcc.target/i386/pr38988.c

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gcc.target/i386/pr38988.c gcc-4.3.3/gcc/testsuite/gcc.target/i386/pr38988.c
    old new  
     1/* { dg-do compile } */
     2/* { dg-require-effective-target lp64 } */
     3/* { dg-require-effective-target fpic } */
     4/* { dg-options "-O2 -fpic -mcmodel=large" } */
     5
     6typedef long unsigned int size_t;
     7typedef void (*func_ptr) (void);
     8
     9static func_ptr __DTOR_LIST__[1] = { (func_ptr) (-1) };
     10
     11void
     12__do_global_dtors_aux (void)
     13{
     14  extern func_ptr __DTOR_END__[];
     15  size_t dtor_idx = 0;
     16  const size_t max_idx = __DTOR_END__ - __DTOR_LIST__ - 1;
     17  func_ptr f;
     18
     19  while (dtor_idx < max_idx)
     20    {
     21      f = __DTOR_LIST__[++dtor_idx];
     22      f ();
     23    }
     24}
  • gcc/testsuite/g++.dg/other/pr38706.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/other/pr38706.C gcc-4.3.3/gcc/testsuite/g++.dg/other/pr38706.C
    old new  
     1// PR target/38706
     2// { dg-do compile }
     3// { dg-options "-O2" }
     4
     5class ios_base
     6{
     7public:
     8  virtual ~ios_base ();
     9
     10};
     11
     12class istrstream:virtual public ios_base
     13{
     14public:
     15  virtual ~istrstream ();
     16
     17};
     18
     19istrstream::~istrstream () {}
  • gcc/testsuite/g++.dg/parse/dtor14.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/parse/dtor14.C gcc-4.3.3/gcc/testsuite/g++.dg/parse/dtor14.C
    old new  
     1// PR c++/39054
     2
     3struct A {};
     4
     5template<typename> void foo()
     6{
     7  A().~int();                   // { dg-error "expected" }
     8}
  • gcc/testsuite/g++.dg/template/dtor5.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/template/dtor5.C gcc-4.3.3/gcc/testsuite/g++.dg/template/dtor5.C
    old new  
     1// PR c++/23287
     2
     3template <class T> struct A
     4{
     5  int i;
     6  ~A();
     7};
     8
     9template <class T> void f(A<T> *ap) {
     10  ap->~A();
     11}
     12
     13template <class T> void g(A<T> *ap) {
     14  ap->~B();                     // { dg-error "destructor name" }
     15}
     16
     17int main()
     18{
     19  f(new A<int>);
     20  g(new A<int>);
     21}
  • gcc/testsuite/g++.dg/template/func2.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/template/func2.C gcc-4.3.3/gcc/testsuite/g++.dg/template/func2.C
    old new  
     1// { dg-do compile }
     2
     3typedef void (*fptr)();
     4fptr zeroptr = 0;
     5template<typename T, fptr F> struct foo { };
     6template<typename T> struct foo<T,zeroptr> { };
     7// { dg-error "not a valid template argument" "not valid" { target *-*-* } 6 }
     8// { dg-error "must be the address" "must be the address " { target *-*-* } 6 }
     9
     10// The rest is needed to trigger the ICE in 4.0 to 4.3:
     11void f() { }
     12foo<int,&f> m_foo;
  • gcc/testsuite/g++.dg/template/typename15.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/template/typename15.C gcc-4.3.3/gcc/testsuite/g++.dg/template/typename15.C
    old new  
     1// PR37314 ice-on-valid-code, from w.doeringer
     2template <typename T>
     3class Cdeque {
     4    typedef T *pointer;
     5    class iterator {
     6        typedef typename Cdeque<T>::pointer pointer;
     7        pointer operator->();
     8    };
     9};
     10template <typename T> T* Cdeque<T>::iterator::operator->() { }
     11
     12
  • gcc/testsuite/g++.dg/template/typename16.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/template/typename16.C gcc-4.3.3/gcc/testsuite/g++.dg/template/typename16.C
    old new  
     1// PR37314 rejects-valid, from w.doeringer
     2template <typename T>
     3struct A {
     4  typedef __PTRDIFF_TYPE__ difference_type;
     5  struct B {
     6    typedef typename A<T>::difference_type difference_type;
     7    difference_type operator-(B const&) const;
     8    T t;
     9  };
     10};
     11//
     12
     13template <typename T>
     14typename A<T>::B::difference_type A<T>::B::operator-(B const&) const {
     15  return -1;
     16}
     17
     18//
     19int main() {
     20  A<int>::B i;
     21  ++i.t;
     22  return 0;
     23}
     24
     25
  • gcc/testsuite/g++.dg/torture/pr38745.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/torture/pr38745.C gcc-4.3.3/gcc/testsuite/g++.dg/torture/pr38745.C
    old new  
     1/* { dg-do compile } */
     2
     3union u_u16
     4{
     5  unsigned short v;
     6  struct
     7    {
     8      unsigned char lo8, hi8;
     9    } __attribute__ ((__may_alias__)) u;
     10} __attribute__ ((__may_alias__));
     11union u_u32
     12{
     13  unsigned int v;
     14  struct
     15    {
     16      u_u16 lo16, hi16;
     17    } u;
     18} __attribute__ ((__may_alias__));
     19union u_u64
     20{
     21  struct
     22    {
     23      u_u32 lo32, hi32;
     24    } u;
     25};
     26struct Record
     27{
     28};
     29long long
     30UnpackFullKey (Record & rec, const char *&p)
     31{
     32  long long c64 = 0;
     33  (*(u_u16 *) & (*(u_u32 *) & ( *(u_u64*)&c64).u.lo32.v).u.lo16.v).u.hi8 = 1;
     34  return c64;
     35}
     36
  • gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-placement-new.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-placement-new.C gcc-4.3.3/gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-placement-new.C
    old new  
     1/* { dg-do compile } */
     2/* { dg-options "-O2 -Wstrict-aliasing" } */
     3
     4inline void *operator new (__SIZE_TYPE__, void *__p) throw() { return __p; }
     5
     6struct Y {
     7  Y() {}
     8  int i;
     9};
     10
     11struct X {
     12  X() {}
     13  void construct(const Y& y)
     14  {
     15    new (&m_data[0]) Y(y);
     16  }
     17  bool initialized;
     18  char m_data[sizeof (Y)];
     19};
     20
     21void bar(const X&);
     22void foo(Y& y)
     23{
     24  X x;
     25  x.construct(y);
     26  x.initialized = true;
     27  bar(x);
     28}
     29
  • gcc/testsuite/g++.dg/warn/Wuninitialized-1.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/warn/Wuninitialized-1.C gcc-4.3.3/gcc/testsuite/g++.dg/warn/Wuninitialized-1.C
    old new  
     1/* { dg-options "-O2 -Wuninitialized" } */
     2
     3struct Empty { Empty() {} }; /* { dg-bogus "uninitialized" } */
     4struct Other {
     5    Other(const Empty& e_) : e(e_) {}
     6    Empty e;
     7};
     8void bar(Other&);
     9void foo()
     10{
     11  Empty e;
     12  Other o(e);
     13  bar(o);
     14}
     15
  • gcc/testsuite/g++.dg/warn/Wuninitialized-2.C

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/g++.dg/warn/Wuninitialized-2.C gcc-4.3.3/gcc/testsuite/g++.dg/warn/Wuninitialized-2.C
    old new  
     1/* { dg-do compile } */
     2/* { dg-options "-O -Wuninitialized" } */
     3
     4struct S8 { template<typename T> S8(T) { } };
     5
     6template<typename T> struct S10;
     7template<typename T> struct S10<T()> { typedef T S12; typedef S8 S1(); };
     8
     9template<typename T> struct S3 { };
     10template<typename T> struct S11 { S11(S3<T>); };
     11
     12struct S2
     13{
     14  template<typename T> operator S11<T>() { return S11<T>(S5<T>()); }
     15  template<typename T> struct S5:public S3<T>
     16  {
     17    virtual typename S10<T>::S12 S13() {
     18      return 0;
     19    }
     20  };
     21};
     22
     23template<typename T> S11<T> S6(S3<T>) { return S11<T>(S3<T>()); }
     24template<typename S12> struct S7 { typedef S12 S15(); };
     25
     26struct S4
     27{
     28  template<typename T> operator S11<T>()
     29  {
     30    struct S14:public S3<T>
     31    {
     32      S14(S2 x):S11_(x) { }
     33      S11<typename S7<typename S10<T>::S12>::S15> S11_;
     34    };
     35    return S6(S14(S11_));
     36  }
     37  S2 S11_;
     38};
     39
     40struct S9
     41{
     42  template<typename F> operator S11<F>() { return S11<F>(S14<F>(S11_)); }
     43  template<typename F> struct S14:public S3<F>
     44  {
     45    S14(S4 x):S11_(x) { }
     46    S11<typename S10<F>::S1> S11_;
     47  };
     48  S4 S11_;
     49};
     50
     51void S15(S11<void()>);
     52void S16() { S9 x; S15(x); }
     53
  • gcc/testsuite/gfortran.dg/bounds_5.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/bounds_5.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/bounds_5.f90
    old new  
     1! { dg-do run }
     2!
     3! PR fortran/38859
     4! Wrong bounds simplification
     5!
     6! Contributed by Dick Hendrickson <dick.hendrickson@gmail.com>
     7
     8       type x
     9         integer I
     10       end type x
     11       type (x) A(0:5, 2:8)
     12       integer ida(2)
     13
     14       ida = lbound(a)
     15       if (any(ida /= (/0,2/))) call abort
     16
     17       ida = lbound(a%i)
     18       if (any(ida /= (/1,1/))) call abort
     19
     20       ida = ubound(a)
     21       if (any(ida /= (/5,8/))) call abort
     22       
     23       ida = ubound(a%i)
     24       if (any(ida /= (/6,7/))) call abort
     25
     26       end
  • gcc/testsuite/gfortran.dg/host_assoc_blockdata_1.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/host_assoc_blockdata_1.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/host_assoc_blockdata_1.f90
    old new  
     1! { dg-do compile }
     2! PR 38672 - this used to ICE.
     3MODULE globals
     4  TYPE :: type1
     5     integer :: x
     6  END TYPE type1
     7  TYPE (type1) :: pdm_bps
     8END module globals
     9BLOCK DATA
     10   use globals
     11END BLOCK DATA
  • gcc/testsuite/gfortran.dg/host_assoc_blockdata_2.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/host_assoc_blockdata_2.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/host_assoc_blockdata_2.f90
    old new  
     1! { dg-do compile }
     2MODULE globals
     3  TYPE :: type1
     4     sequence
     5     integer :: x
     6  END TYPE type1
     7  TYPE (type1) :: pdm_bps
     8  common /co/ pdm_bps
     9END module globals
     10BLOCK DATA
     11   use globals
     12END BLOCK DATA
     13
     14program main
     15  use globals
     16  common /co/ pdm_bps ! { dg-error "already in a COMMON block" }
     17end program main
  • gcc/testsuite/gfortran.dg/host_assoc_function_7.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/host_assoc_function_7.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/host_assoc_function_7.f90
    old new  
     1! { dg-do run }
     2! Tests the fix for PR38907, in which any expressions, including unary plus,
     3! in front of the call to S_REAL_SUM_I (marked) would throw the mechanism
     4! for correcting invalid host association.
     5!
     6! Contributed by Dick Hendrickson <dick.hendrickson@gmail.com>
     7!
     8module sa0054_stuff
     9  REAL :: S_REAL_SUM_2(10) = [(REAL (I), I = 1, 10)]
     10contains
     11  ELEMENTAL FUNCTION S_REAL_SUM_I (A)
     12    REAL  ::  S_REAL_SUM_I
     13    REAL, INTENT(IN)  ::  A
     14    X = 1.0
     15    S_REAL_SUM_I = X
     16  END FUNCTION S_REAL_SUM_I
     17  SUBROUTINE SA0054 (RDA)
     18    REAL RDA(:)
     19    RDA =  + S_REAL_SUM_I (RDA)          ! Reported problem => ICE
     20    RDA = RDA + S_REAL_SUM_2 (INT (RDA)) ! Also failed
     21  CONTAINS
     22    ELEMENTAL FUNCTION S_REAL_SUM_I (A)
     23      REAL  ::  S_REAL_SUM_I
     24      REAL, INTENT(IN)  ::  A
     25      S_REAL_SUM_I = 2.0 * A
     26    END FUNCTION S_REAL_SUM_I
     27    ELEMENTAL FUNCTION S_REAL_SUM_2 (A)
     28      REAL  ::  S_REAL_SUM_2
     29      INTEGER, INTENT(IN)  ::  A
     30      S_REAL_SUM_2 = 2.0 * A
     31    END FUNCTION S_REAL_SUM_2
     32  END SUBROUTINE
     33end module sa0054_stuff
     34
     35  use sa0054_stuff
     36  REAL :: RDA(10) = [(REAL(I), I = 1, 10)]
     37  call SA0054 (RDA)
     38  IF (ANY (INT (RDA) .ne. [(6 * I, I = 1, 10)])) print *, rda
     39END
     40
     41! { dg-final { cleanup-modules "sa0054_stuff" } }
  • gcc/testsuite/gfortran.dg/module_commons_3.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/module_commons_3.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/module_commons_3.f90
    old new  
     1! { dg-do run }
     2!
     3! PR fortran/38657, in which the mixture of PRIVATE and
     4! COMMON in TEST4, would mess up the association with
     5! TESTCHAR in TEST2.
     6!
     7! Contributed by Paul Thomas <pault@gcc.gnu.org>
     8! From a report in clf by Chris Bradley.
     9!
     10MODULE TEST4
     11  PRIVATE
     12  CHARACTER(LEN=80) :: T1 = &
     13    "Mary had a little lamb, Its fleece was white as snow;"
     14  CHARACTER(LEN=80) :: T2 = &
     15    "And everywhere that Mary went, The lamb was sure to go."
     16  CHARACTER(LEN=80) :: TESTCHAR
     17  COMMON /TESTCOMMON1/ TESTCHAR
     18  PUBLIC T1, T2, FOOBAR
     19CONTAINS
     20  subroutine FOOBAR (CHECK)
     21    CHARACTER(LEN=80) :: CHECK
     22    IF (TESTCHAR .NE. CHECK) CALL ABORT
     23  end subroutine
     24END MODULE TEST4
     25
     26MODULE TEST3
     27  CHARACTER(LEN=80) :: TESTCHAR
     28  COMMON /TESTCOMMON1/ TESTCHAR
     29END MODULE TEST3
     30
     31MODULE TEST2
     32  use TEST4
     33  USE TEST3, chr => testchar
     34  PRIVATE
     35  CHARACTER(LEN=80) :: TESTCHAR
     36  COMMON /TESTCOMMON1/ TESTCHAR
     37  PUBLIC TESTCHAR, FOO, BAR, CHR, T1, T2, FOOBAR
     38contains
     39  subroutine FOO
     40    TESTCHAR = T1
     41  end subroutine
     42  subroutine BAR (CHECK)
     43    CHARACTER(LEN=80) :: CHECK
     44    IF (TESTCHAR .NE. CHECK) CALL ABORT
     45    IF (CHR .NE. CHECK) CALL ABORT
     46  end subroutine
     47END MODULE TEST2
     48
     49PROGRAM TEST1
     50  USE TEST2
     51  call FOO
     52  call BAR (T1)
     53  TESTCHAR = T2
     54  call BAR (T2)
     55  CALL FOOBAR (T2)
     56END PROGRAM TEST1
     57! { dg-final { cleanup-modules "TEST2 TEST3 TEST4" } }
  • gcc/testsuite/gfortran.dg/mvbits_5.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/mvbits_5.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/mvbits_5.f90
    old new  
     1! { dg-do run }
     2
     3! PR fortran/38887
     4! This aborted at runtime for the runtime zero-sized array arguments.
     5
     6! Contributed by Dick Hendrickson <dick.hendrickson@gmail.com>
     7
     8program try_ya0013
     9  integer ida(9)
     10  call ya0013(ida,1,5,6)
     11end program
     12
     13SUBROUTINE YA0013(IDA,nf1,nf5,nf6)
     14  INTEGER IDA(9)
     15  IDA = 1
     16  CALL MVBITS(IDA(NF5:NF1), 0, 1, IDA(NF6:NF1),2)
     17END SUBROUTINE
  • gcc/testsuite/gfortran.dg/mvbits_6.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/mvbits_6.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/mvbits_6.f90
    old new  
     1! { dg-do compile }
     2
     3! PR fortran/38883
     4! This ICE'd because the temporary-creation in the MVBITS call was wrong.
     5! This is the original test from the PR, the complicated version.
     6
     7! Contributed by Dick Hendrickson <dick.hendrickson@gmail.com>
     8
     9     module yg0009_stuff
     10
     11      type unseq
     12         integer I
     13      end type
     14
     15      contains
     16
     17      SUBROUTINE YG0009(TDA2L,NF4,NF3,NF1,MF1,MF4,MF3)
     18        TYPE(UNSEQ) TDA2L(NF4,NF3)
     19
     20        CALL MVBITS (TDA2L(NF4:NF1:MF1,NF1:NF3)%I,2, &
     21          4, TDA2L(-MF4:-MF1:-NF1,-MF1:-MF3)%I, 3)
     22
     23      END SUBROUTINE
     24
     25      end module yg0009_stuff
     26
     27      program try_yg0009
     28      use yg0009_stuff
     29      type(unseq)  tda2l(4,3)
     30
     31      call yg0009(tda2l,4,3,1,-1,-4,-3)
     32
     33      end
  • gcc/testsuite/gfortran.dg/mvbits_7.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/mvbits_7.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/mvbits_7.f90
    old new  
     1! { dg-do run }
     2
     3! PR fortran/38883
     4! This ICE'd because the temporary-creation in the MVBITS call was wrong.
     5
     6! Contributed by Paul Richard Thomas <paul.richard.thomas@gmail.com>
     7
     8  type t
     9    integer  ::  I
     10    character(9)  :: chr
     11  end type
     12  type(t) :: x(4,3)
     13  type(t) :: y(4,3)
     14  x = reshape ([((t (i*j, "a"),i = 1,4), j=1,3)], [4,3])
     15  call foo (x)
     16  y = reshape ([((t (i*j*2, "a"),i = 1,4), j=1,3)], [4,3])
     17  call bar(y, 4, 3, 1, -1, -4, -3)
     18  if (any (x%i .ne. y%i)) call abort
     19contains
     20  SUBROUTINE foo (x)
     21    TYPE(t) x(4, 3)      ! No dependency at all
     22    CALL MVBITS (x%i, 0, 6, x%i, 8)
     23    x%i = x%i * 2
     24  END SUBROUTINE
     25  SUBROUTINE bar (x, NF4, NF3, NF1, MF1, MF4, MF3)
     26    TYPE(t) x(NF4, NF3)  ! Dependency through variable indices
     27    CALL MVBITS (x(NF4:NF1:MF1, NF1:NF3)%i, 1, &
     28                 6, x(-MF4:-MF1:-NF1, -MF1:-MF3)%i, 9)
     29  END SUBROUTINE
     30end
  • gcc/testsuite/gfortran.dg/mvbits_8.f90

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/mvbits_8.f90 gcc-4.3.3/gcc/testsuite/gfortran.dg/mvbits_8.f90
    old new  
     1! { dg-do run }
     2
     3! PR fortran/38883
     4! This ICE'd because the temporary-creation in the MVBITS call was wrong.
     5
     6PROGRAM main
     7  IMPLICIT NONE
     8
     9  TYPE inner
     10    INTEGER :: i
     11    INTEGER :: j
     12  END TYPE inner
     13
     14  TYPE outer
     15    TYPE(inner) :: comp(2)
     16  END TYPE outer
     17
     18  TYPE(outer) :: var
     19
     20  var%comp%i = (/ 1, 2 /)
     21  var%comp%j = (/ 3, 4 /)
     22
     23  CALL foobar (var, 1, 2)
     24
     25  IF (ANY (var%comp%i /= (/ 1, 2 /))) CALL abort ()
     26  IF (ANY (var%comp%j /= (/ 3, 4 /))) CALL abort ()
     27
     28CONTAINS
     29
     30  SUBROUTINE foobar (x, lower, upper)
     31    TYPE(outer), INTENT(INOUT) :: x
     32    INTEGER, INTENT(IN) :: lower, upper
     33    CALL MVBITS (x%comp%i, 1, 2, x%comp(lower:upper)%i, 1)
     34  END SUBROUTINE foobar
     35
     36END PROGRAM main
  • gcc/testsuite/gfortran.dg/pr38868.f

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/gfortran.dg/pr38868.f gcc-4.3.3/gcc/testsuite/gfortran.dg/pr38868.f
    old new  
     1! { dg-do compile }
     2! { dg-options "-O2 -fdump-rtl-expand" }
     3      PROGRAM testcase
     4      IMPLICIT NONE
     5
     6      CHARACTER*4 ANER(18)
     7      CHARACTER*80 LINE
     8      aner = ''
     9      ANER(1)='A   '
     10      ANER(2)='    '
     11      LINE=' '
     12      LINE(78:80)='xyz'
     13      WRITE(*,'(A82)') "'"//LINE//"'"
     14      END
     15
     16! { dg-final { scan-rtl-dump-times "line\\\+80" 0 "expand" } }
     17! { dg-final { cleanup-rtl-dump "expand" } } */
  • gcc/testsuite/objc.dg/gnu-encoding/gnu-encoding.exp

    diff -Naur gcc-4.3.3.orig/gcc/testsuite/objc.dg/gnu-encoding/gnu-encoding.exp gcc-4.3.3/gcc/testsuite/objc.dg/gnu-encoding/gnu-encoding.exp
    old new  
    3737set generator_src "$generator_src $srcdir/$subdir/generate-random.c"
    3838set generator_src "$generator_src $srcdir/$subdir/generate-random_r.c"
    3939set generator_cmd "-o $generator $generator_src"
     40# Temporarily unset GCC_EXEC_PREFIX from environment, as that might
     41# confuse the $HOSTCC.
     42set orig_gcc_exec_prefix_saved 0
     43if [info exists env(GCC_EXEC_PREFIX)] {
     44     set orig_gcc_exec_prefix "$env(GCC_EXEC_PREFIX)"
     45     set orig_gcc_exec_prefix_saved 1
     46     unsetenv GCC_EXEC_PREFIX
     47}
    4048set status [remote_exec host "$HOSTCC $HOSTCFLAGS $generator_cmd"]
    4149set status [lindex $status 0]
     50if { $orig_gcc_exec_prefix_saved } {
     51     set orig_gcc_exec_prefix_saved 0
     52     setenv GCC_EXEC_PREFIX "$orig_gcc_exec_prefix"
     53}
    4254if { $status == 0 } then {
    4355    file delete -force $tstobjdir
    4456    file mkdir $tstobjdir
  • gcc/tree.h

    diff -Naur gcc-4.3.3.orig/gcc/tree.h gcc-4.3.3/gcc/tree.h
    old new  
    47534753
    47544754extern tree fold (tree);
    47554755extern tree fold_unary (enum tree_code, tree, tree);
     4756extern tree fold_unary_ignore_overflow (enum tree_code, tree, tree);
    47564757extern tree fold_binary (enum tree_code, tree, tree, tree);
    47574758extern tree fold_ternary (enum tree_code, tree, tree, tree, tree);
    47584759extern tree fold_build1_stat (enum tree_code, tree, tree MEM_STAT_DECL);
  • gcc/tree-ssa-ccp.c

    diff -Naur gcc-4.3.3.orig/gcc/tree-ssa-ccp.c gcc-4.3.3/gcc/tree-ssa-ccp.c
    old new  
    938938      if ((code == NOP_EXPR || code == CONVERT_EXPR)
    939939          && useless_type_conversion_p (TREE_TYPE (rhs), TREE_TYPE (op0)))
    940940        return op0;
    941       return fold_unary (code, TREE_TYPE (rhs), op0);
     941      return fold_unary_ignore_overflow (code, TREE_TYPE (rhs), op0);
    942942    }
    943943
    944944  /* Binary and comparison operators.  We know one or both of the
  • gcc/tree-ssa-forwprop.c

    diff -Naur gcc-4.3.3.orig/gcc/tree-ssa-forwprop.c gcc-4.3.3/gcc/tree-ssa-forwprop.c
    old new  
    677677     array elements, then the result is converted into the proper
    678678     type for the arithmetic.  */
    679679  if (TREE_CODE (TREE_OPERAND (rhs, 1)) == SSA_NAME
     680      && useless_type_conversion_p (TREE_TYPE (name), TREE_TYPE (def_rhs))
    680681      /* Avoid problems with IVopts creating PLUS_EXPRs with a
    681682         different type than their operands.  */
    682683      && useless_type_conversion_p (TREE_TYPE (rhs), TREE_TYPE (name)))
  • gcc/tree-ssa-sccvn.c

    diff -Naur gcc-4.3.3.orig/gcc/tree-ssa-sccvn.c gcc-4.3.3/gcc/tree-ssa-sccvn.c
    old new  
    15071507  if (op0 == TREE_OPERAND (rhs, 0))
    15081508    return rhs;
    15091509
    1510   result = fold_unary (TREE_CODE (rhs), TREE_TYPE (rhs), op0);
     1510  result = fold_unary_ignore_overflow (TREE_CODE (rhs), TREE_TYPE (rhs), op0);
    15111511  if (result)
    15121512    {
    15131513      STRIP_USELESS_TYPE_CONVERSION (result);
  • libjava/classpath/doc/cp-tools.info

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/cp-tools.info gcc-4.3.3/libjava/classpath/doc/cp-tools.info
    old new  
    1 This is cp-tools.info, produced by makeinfo version 4.12 from
    2 /abuild/rguenther/tmp/gcc-4.3.3/gcc-4.3.3/libjava/classpath/doc/cp-tools.texinfo.
    3 
    4 This file documents the Tools included in a standard distribution of
    5 the GNU Classpath project deliverables.
    6 
    7    Copyright (C) 2006, 2007 Free Software Foundation, Inc.
    8 
    9 INFO-DIR-SECTION GNU Libraries
    10 START-INFO-DIR-ENTRY
    11 * Classpath Tools: (cp-tools).  GNU Classpath Tools Guide
    12 END-INFO-DIR-ENTRY
    13 
    14 
    15 File: cp-tools.info,  Node: Top,  Next: Applet Tools,  Prev: (dir),  Up: (dir)
    16 
    17 GNU Classpath Tools Guide
    18 *************************
    19 
    20 This document contains important information you need to know in order
    21 to use the tools included in the GNU Classpath project deliverables.
    22 
    23    The Tools aim at providing a free replacement, similar in their
    24 behavior, to their counter-parts found in the Reference Implementation
    25 (RI) of the Java Software Development Kit (SDK).
    26 
    27 * Menu:
    28 
    29 * Applet Tools::               Work with applets
    30 * Security Tools::             Work securely with Java applications
    31 * Other Tools::                Other tools in classpath
    32 * I18N Issues::                How to add support for non-English languages
    33 
    34  --- The Detailed Node Listing ---
    35 
    36 Applet Tools
    37 
    38 * appletviewer Tool::          Load applets
    39 * gcjwebplugin::               Load applets in a web browser
    40 
    41 Security Tools
    42 
    43 * jarsigner Tool::             Sign and verify .JAR files
    44 * keytool Tool::               Manage private keys and public certificates
    45 
    46 jarsigner Tool
    47 
    48 * Common jarsigner Options::   Options used when signing or verifying a file
    49 * Signing Options::            Options only used when signing a .JAR file
    50 * Verification Options::       Options only used when verifying a .JAR file
    51 
    52 keytool Tool
    53 
    54 * Getting Help::               How to get help with keytool commands
    55 * Common keytool Options::     Options used in more than one command
    56 * Distinguished Names::        X.500 Distinguished Names used in certificates
    57 * Add/Update Commands::        Commands for adding data to a Key Store
    58 * Export Commands::            Commands for exporting data from a Key Store
    59 * Display Commands::           Commands for displaying data in a Key Store
    60 * Management Commands::        Commands for managing a Key Store
    61 
    62 Add/Update Commands
    63 
    64 * Command -genkey::            Generate private key and self-signed certificate
    65 * Command -import::            Import certificates and certificate replies
    66 * Command -selfcert::          Generate self-signed certificate
    67 * Command -cacert::            Import a CA Trusted Certificate
    68 * Command -identitydb::        Import JDK-1 style identities
    69 
    70 Export Commands
    71 
    72 * Command -certreq::           Generate Certificate Signing Requests (CSR)
    73 * Command -export::            Export a certificate in a Key Store
    74 
    75 Display Commands
    76 
    77 * Command -list::              Display information about one or all Aliases
    78 * Command -printcert::         Print a certificate or a certificate fingerprint
    79 
    80 Management Commands
    81 
    82 * Command -keyclone::          Clone a Key Entry in a Key Store
    83 * Command -storepasswd::       Change the password protecting a Key Store
    84 * Command -keypasswd::         Change the password protecting a Key Entry
    85 * Command -delete::            Remove an entry in a Key Store
    86 
    87 Other Tools
    88 
    89 * jar Tool::                   Archive tool for Java archives
    90 * javah Tool::                 A java header compiler
    91 * gcjh Tool::                  A java header compiler (old version)
    92 * native2ascii Tool::          An encoding converter
    93 * orbd Tool::                  An object request broker daemon
    94 * serialver Tool::             A serial version command
    95 * rmid Tool::                  RMI activation daemon
    96 * rmiregistry Tool::           Remote object registry
    97 * tnameserv Tool::             Naming service
    98 
    99 I18N Issues
    100 
    101 * Language Resources::         Where resources are located
    102 * Message Formats::            How messages are internationalized
    103 
    104 
    105 File: cp-tools.info,  Node: Applet Tools,  Next: Security Tools,  Prev: Top,  Up: Top
    106 
    107 1 Applet Tools
    108 **************
    109 
    110 Two Applet Tools are available with GNU Classpath: appletviewer and
    111 gcjwebplugin.
    112 
    113    To avoid conflicts with other implementations, the appletviewer
    114 executable is called "gappletviewer".
    115 
    116 * Menu:
    117 
    118 * appletviewer Tool::          Load applets
    119 * gcjwebplugin::               Load applets in a web browser
    120 
    121    If while using these tools you think you found a bug, then please
    122 report it at classpath-bugs
    123 (http://www.gnu.org/software/classpath/bugs.html).
    124 
    125 
    126 File: cp-tools.info,  Node: appletviewer Tool,  Next: gcjwebplugin,  Prev: Applet Tools,  Up: Applet Tools
    127 
    128 1.1 The `appletviewer' Tool
    129 ===========================
    130 
    131 SYNOPSIS
    132 
    133    appletviewer [OPTION]... URL...
    134 appletviewer [OPTION]... `-code' CODE
    135 appletviewer [OPTION]... `-plugin' INPUT,OUTPUT
    136 
    137    DESCRIPTION The `appletviewer' tool loads and runs an applet.
    138 
    139    Use the first form to test applets specified by tag.  The URL should
    140 resolve to an HTML document from which the `appletviewer' will extract
    141 applet tags.  The APPLET, EMBED and OBJECT tags are supported.  If a
    142 given document contains multiple applet tags, all the applets will be
    143 loaded, with each applet appearing in its own window.  Likewise, when
    144 multiple URLs are specified, each applet tag instance is given its own
    145 window.  If a given document contains no recognized tags the
    146 `appletviewer' does nothing.
    147 
    148      appletviewer http://www.gnu.org/software/classpath/
    149 
    150    Use the second form to test an applet in development.  This form
    151 allows applet tag attributes to be supplied on the command line.  Only
    152 one applet may be specified using the `-code' option.  The `-code'
    153 option overrides the URL form - any URLs specified will be ignored.
    154 
    155      appletviewer -code Test.class -param datafile,data.txt
    156 
    157    `gcjwebplugin' uses the third form to communicate with the
    158 `appletviewer' through named pipes.
    159 
    160    URL OPTIONS
    161 `-debug'
    162      This option is not yet implemented but is provided for
    163      compatibility.
    164 
    165 `-encoding CHARSET'
    166      Use this option to specify an alternate character encoding for the
    167      specified HTML page.
    168 
    169 
    170    APPLET TAG OPTIONS
    171 `-code CODE'
    172      Use the `-code' option to specify the value of the applet tag CODE
    173      attribute.
    174 
    175 `-codebase CODEBASE'
    176      Use the `-codebase' option to specify the value of the applet tag
    177      CODEBASE attribute.
    178 
    179 `-archive ARCHIVE'
    180      Use the `-archive' option to specify the value of the applet tag
    181      ARCHIVE attribute.
    182 
    183 `-width WIDTH'
    184      Use the `-width' option to specify the value of the applet tag
    185      WIDTH attribute.
    186 
    187 `-height HEIGHT'
    188      Use the `-height' option to specify the value of the applet tag
    189      HEIGHT attribute.
    190 
    191 `-param NAME,VALUE'
    192      Use the `-param' option to specify values for the NAME and VALUE
    193      attributes of an applet PARAM tag.
    194 
    195 
    196    PLUGIN OPTION
    197 `-plugin INPUT,OUTPUT'
    198      `gcjwebplugin' uses the `-plugin' option to specify the named pipe
    199      the `appletviewer' should use for receiving commands (INPUT) and
    200      the one it should use for sending commands to `gcjwebplugin'
    201      (OUTPUT).
    202 
    203 
    204    DEBUGGING OPTION
    205 `-verbose'
    206      Use the `-verbose' option to have the `appletviewer' print
    207      debugging messages.
    208 
    209 
    210    STANDARD OPTIONS
    211 
    212 `-help'
    213      Use the `-help' option to have the `appletviewer' print a usage
    214      message, then exit.
    215 
    216 `-version'
    217      Use the `-version' option to have the `appletviewer' print its
    218      version, then exit.
    219 
    220 `-JOPTION'
    221      Use the `-J' option to pass OPTION to the virtual machine that
    222      will run the `appletviewer'.  Unlike other options, there must not
    223      be a space between the `-J' and OPTION.
    224 
    225 
    226 
    227 File: cp-tools.info,  Node: gcjwebplugin,  Prev: appletviewer Tool,  Up: Applet Tools
    228 
    229 1.2 The `gcjwebplugin' Tool
    230 ===========================
    231 
    232 `gcjwebplugin' is a plugin that adds applet support to web browsers.
    233 Currently `gcjwebplugin' only supports Mozilla-based browsers (e.g.,
    234 Firefox, Galeon, Mozilla).
    235 
    236 
    237 File: cp-tools.info,  Node: Security Tools,  Next: Other Tools,  Prev: Applet Tools,  Up: Top
    238 
    239 2 Security Tools
    240 ****************
    241 
    242 Two Security Tools are available with GNU Classpath: `jarsigner' and
    243 `keytool'.
    244 
    245    To avoid conflicts with other implementations, the jarsigner
    246 executable is called `gjarsigner' and the keytool executable is called
    247 `gkeytool'.
    248 
    249 * Menu:
    250 
    251 * jarsigner Tool::             Sign and verify .JAR files
    252 * keytool Tool::               Manage private keys and public certificates
    253 
    254    If while using these tools you think you found a bug, then please
    255 report it at classpath-bugs
    256 (http://www.gnu.org/software/classpath/bugs.html).
    257 
    258 
    259 File: cp-tools.info,  Node: jarsigner Tool,  Next: keytool Tool,  Prev: Security Tools,  Up: Security Tools
    260 
    261 2.1 The `jarsigner' Tool
    262 ========================
    263 
    264 The `jarsigner' tool is invoked from the command line, in one of two
    265 forms, as follows:
    266 
    267      jarsigner [OPTION]... FILE ALIAS
    268 
    269      jarsigner `-verify' [OPTION]... FILE
    270 
    271    When the first form is used, the tool signs the designated JAR file.
    272 The second form, on the other hand, is used to verify a previously
    273 signed JAR file.
    274 
    275    FILE is the .JAR file to process; i.e. to sign if the first syntax
    276 form is used, or to verify if the second syntax form is used instead.
    277 
    278    ALIAS must be a known Alias of a Key Entry in the designated Key
    279 Store. The private key material associated with this Alias is then used
    280 for signing the designated .JAR file.
    281 
    282 * Menu:
    283 
    284 * Common jarsigner Options::   Options used when signing or verifying a file
    285 * Signing Options::            Options only used when signing a .JAR file
    286 * Verification Options::       Options only used when verifying a .JAR file
    287 
    288 
    289 File: cp-tools.info,  Node: Common jarsigner Options,  Next: Signing Options,  Prev: jarsigner Tool,  Up: jarsigner Tool
    290 
    291 2.1.1 Common options
    292 --------------------
    293 
    294 The following options may be used when the tool is used for either
    295 signing, or verifying, a .JAR file.
    296 
    297 `-verbose'
    298      Use this option to force the tool to generate more verbose
    299      messages, during its processing.
    300 
    301 `-internalsf'
    302      When present, the tool will include -which otherwise it does not-
    303      the `.SF' file in the `.DSA' generated file.
    304 
    305 `-sectionsonly'
    306      When present, the tool will include in the `.SF' generated file
    307      -which otherwise it does not- a header containing a hash of the
    308      whole manifest file.  When that header is included, the tool can
    309      quickly check, during verification, if the hash (in the header)
    310      matches or not the manifest file.
    311 
    312 `-provider PROVIDER_CLASS_NAME'
    313      A fully qualified class name of a Security Provider to add to the
    314      current list of Security Providers already installed in the JVM
    315      in-use. If a provider class is specified with this option, and was
    316      successfully added to the runtime -i.e. it was not already
    317      installed- then the tool will attempt to remove this Security
    318      Provider before exiting.
    319 
    320 `-help'
    321      Prints a help text similar to this one.
    322 
    323 
    324 
    325 File: cp-tools.info,  Node: Signing Options,  Next: Verification Options,  Prev: Common jarsigner Options,  Up: jarsigner Tool
    326 
    327 2.1.2 Signing options
    328 ---------------------
    329 
    330 The following options may be specified when using the tool for signing
    331 purposes.
    332 
    333 `-keystore URL'
    334      Use this option to specify the location of the key store to use.
    335      The default value is a file URL referencing the file named
    336      `.keystore' located in the path returned by the call to
    337      `java.lang.System#getProperty(String)' using `user.home' as
    338      argument.
    339 
    340      If a URL was specified, but was found to be malformed -e.g.
    341      missing protocol element- the tool will attempt to use the URL
    342      value as a file-name (with absolute or relative path-name) of a
    343      key store -as if the protocol was `file:'.
    344 
    345 `-storetype STORE_TYPE'
    346      Use this option to specify the type of the key store to use. The
    347      default value, if this option is omitted, is that of the property
    348      `keystore.type' in the security properties file, which is obtained
    349      by invoking the static method call `getDefaultType()' in
    350      `java.security.KeyStore'.
    351 
    352 `-storepass PASSWORD'
    353      Use this option to specify the password which will be used to
    354      unlock the key store. If this option is missing, the User will be
    355      prompted to provide a password.
    356 
    357 `-keypass PASSWORD'
    358      Use this option to specify the password which the tool will use to
    359      unlock the Key Entry associated with the designated Alias.
    360 
    361      If this option is omitted, the tool will first attempt to unlock
    362      the Key Entry using the same password protecting the key store. If
    363      this fails, you will then be prompted to provide a password.
    364 
    365 `-sigfile NAME'
    366      Use this option to designate a literal that will be used to
    367      construct file names for both the `.SF' and `.DSA' signature
    368      files. These files  will be generated, by the tool, and placed in
    369      the `META-INF' directory of the signed JAR.  Permissible
    370      characters for NAME must be in the range "a-zA-Z0-9_-".  All
    371      characters will be converted to upper-case ones.
    372 
    373      If this option is missing, the first eight characters of the ALIAS
    374      argument will be used. When this is the case, any character in
    375      ALIAS that is outside the permissible range of characters will be
    376      replaced by an underscore.
    377 
    378 `-signedjar FILE'
    379      Use this option to specify the file name of the signed JAR. If
    380      this option is omitted, then the signed JAR will be named the same
    381      as FILE; i.e. the input JAR file will be replaced with the signed
    382      copy.
    383 
    384 
    385 
    386 File: cp-tools.info,  Node: Verification Options,  Prev: Signing Options,  Up: jarsigner Tool
    387 
    388 2.1.3 Verification options
    389 --------------------------
    390 
    391 The following options may be specified when using the tool for
    392 verification purposes.
    393 
    394 `-verify'
    395      Use this option to indicate that the tool is to be used for
    396      verification purposes.
    397 
    398 `-certs'
    399      This option is used in conjunction with the `-verbose' option.
    400      When present, along with the `-verbose' option, the tool will
    401      print more detailed information about the certificates of the
    402      signer(s) being processed.
    403 
    404 
    405 
    406 File: cp-tools.info,  Node: keytool Tool,  Prev: jarsigner Tool,  Up: Security Tools
    407 
    408 2.2 The `keytool' Tool
    409 ======================
    410 
    411 Cryptographic credentials, in a Java environment, are usually stored in
    412 a Key Store. The Java SDK specifies a Key Store as a persistent
    413 container of two types of objects: Key Entries and Trusted
    414 Certificates. The security tool `keytool' is a Java-based application
    415 for managing those types of objects.
    416 
    417    A Key Entry represents the private key part of a key-pair used in
    418 Public-Key Cryptography, and a signed X.509 certificate which
    419 authenticates the public key part for a known entity; i.e. the owner of
    420 the key-pair. The X.509 certificate itself contains the public key part
    421 of the key-pair.
    422 
    423    A Trusted Certificate is a signed X.509 certificate issued by a
    424 trusted entity. The Trust in this context is relative to the User of
    425 the `keytool'. In other words, the existence of a Trusted Certificate
    426 in the Key Store processed by a `keytool' command implies that the User
    427 trusts the Issuer of that Trusted Certificate to also sign, and hence
    428 authenticates, other Subjects the tool may process.
    429 
    430    Trusted Certificates are important because they allow the tool to
    431 mechanically construct Chains of Trust starting from one of the Trusted
    432 Certificates in a Key Store and ending with a certificate whose Issuer
    433 is potentially unknown. A valid chain is an ordered list, starting with
    434 a Trusted Certificate (also called the anchor), ending with the target
    435 certificate, and satisfying the condition that the Subject of
    436 certificate `#i' is the Issuer of certificate `#i + 1'.
    437 
    438    The `keytool' is invoked from the command line as follows:
    439 
    440      keytool [COMMAND] ...
    441 
    442    Multiple COMMANDs may be specified at once, each complete with its
    443 own options. `keytool' will parse all the arguments, before processing,
    444 and executing, each `COMMAND'. If an exception occurs while executing
    445 one COMMAND `keytool' will abort. Note however that because the
    446 implementation of the tool uses code to parse command line options that
    447 also supports GNU-style options, you have to separate each command
    448 group with a double-hyphen; e.g
    449 
    450      keytool -list -- -printcert -alias mykey
    451 
    452    Here is a summary of the commands supported by the tool:
    453 
    454   1. Add/Update commands
    455     `-genkey [OPTION]...'
    456           Generate a new Key Entry, eventually creating a new key store.
    457 
    458     `-import [OPTION]...'
    459           Add, to a key store, Key Entries (private keys and
    460           certificate chains authenticating the public keys) and
    461           Trusted Certificates (3rd party certificates which can be
    462           used as Trust Anchors when building chains-of-trust).
    463 
    464     `-selfcert [OPTION]...'
    465           Generate a new self-signed Trusted Certificate.
    466 
    467     `-cacert [OPTION]...'
    468           Import a CA Trusted Certificate.
    469 
    470     `-identitydb [OPTION]...'
    471           NOT IMPLEMENTED YET.
    472           Import a JDK 1.1 style Identity Database.
    473 
    474   2. Export commands
    475     `-certreq [OPTION]...'
    476           Issue a Certificate Signing Request (CSR) which can be then
    477           sent to a Certification Authority (CA) to issue a certificate
    478           signed (by the CA) and authenticating the Subject of the
    479           request.
    480 
    481     `-export [OPTION]...'
    482           Export a certificate from a key store.
    483 
    484   3. Display commands
    485     `-list [OPTION]...'
    486           Print one or all certificates in a key store to `STDOUT'.
    487 
    488     `-printcert [OPTION]...'
    489           Print a human-readable form of a certificate, in a designated
    490           file, to `STDOUT'.
    491 
    492   4. Management commands
    493     `-keyclone [OPTION]...'
    494           Clone a Key Entry in a key store.
    495 
    496     `-storepasswd [OPTION]...'
    497           Change the password protecting a key store.
    498 
    499     `-keypasswd [OPTION]...'
    500           Change the password protecting a Key Entry in a key store.
    501 
    502     `-delete [OPTION]...'
    503           Delete a Key Entry or a Trusted Certificate from a key store.
    504 
    505 * Menu:
    506 
    507 * Getting Help::               How to get help with keytool commands
    508 * Common keytool Options::     Options used in more than one command
    509 * Distinguished Names::        X.500 Distinguished Names used in certificates
    510 * Add/Update Commands::        Commands for adding data to a Key Store
    511 * Export Commands::            Commands for exporting data from a Key Store
    512 * Display Commands::           Commands for displaying data in a Key Store
    513 * Management Commands::        Commands for managing a Key Store
    514 
    515 
    516 File: cp-tools.info,  Node: Getting Help,  Next: Common keytool Options,  Prev: keytool Tool,  Up: keytool Tool
    517 
    518 2.2.1 Getting help
    519 ------------------
    520 
    521 To get a general help text about the tool, use the `-help' option; e.g.
    522 
    523      `keytool -help'
    524 
    525    To get more specific help text about one of the tool's command use
    526 the `-help' option for that command; e.g.
    527 
    528      `keytool -genkey -help'
    529 
    530    In both instances, the tool will print a help text and then will
    531 exit the running JVM.
    532 
    533    It is worth noting here that the help messages printed by the tool
    534 are I18N-ready. This means that if/when the contents of the tool's
    535 Message Bundle properties file are available in languages other than
    536 English, you may see those messages in that language.
    537 
    538 
    539 File: cp-tools.info,  Node: Common keytool Options,  Next: Distinguished Names,  Prev: Getting Help,  Up: keytool Tool
    540 
    541 2.2.2 Common options
    542 --------------------
    543 
    544 The following `OPTION's are used in more than one `COMMAND'. They are
    545 described here to reduce redundancy.
    546 
    547 `-alias ALIAS'
    548      Every entry, be it a Key Entry or a Trusted Certificate, in a key
    549      store is uniquely identified by a user-defined ALIAS string. Use
    550      this option to specify the ALIAS to use when referring to an entry
    551      in the key store. Unless specified otherwise, a default value of
    552      `mykey' shall be used when this option is omitted from the command
    553      line.
    554 
    555 `-keyalg ALGORITHM'
    556      Use this option to specify the canonical name of the key-pair
    557      generation algorithm. The default value for this option is `DSS'
    558      (a synonym for the Digital Signature Algorithm also known as DSA).
    559 
    560 `-keysize SIZE'
    561      Use this option to specify the number of bits of the shared
    562      modulus (for both the public and private keys) to use when
    563      generating new keys. A default value of `1024' will be used if
    564      this option is omitted from the command line.
    565 
    566 `-validity DAY_COUNT'
    567      Use this option to specify the number of days a newly generated
    568      certificate will be valid for. The default value is `90' (days) if
    569      this option is omitted from the command line.
    570 
    571 `-storetype STORE_TYPE'
    572      Use this option to specify the type of the key store to use. The
    573      default value, if this option is omitted, is that of the property
    574      `keystore.type' in the security properties file, which is obtained
    575      by invoking the static method call `getDefaultType()' in
    576      `java.security.KeyStore'.
    577 
    578 `-storepass PASSWORD'
    579      Use this option to specify the password protecting the key store.
    580      If this option is omitted from the command line, you will be
    581      prompted to provide a password.
    582 
    583 `-keystore URL'
    584      Use this option to specify the location of the key store to use.
    585      The default value is a file URL referencing the file named
    586      `.keystore' located in the path returned by the call to
    587      `java.lang.System#getProperty(String)' using `user.home' as
    588      argument.
    589 
    590      If a URL was specified, but was found to be malformed -e.g.
    591      missing protocol element- the tool will attempt to use the URL
    592      value as a file-name (with absolute or relative path-name) of a
    593      key store -as if the protocol was `file:'.
    594 
    595 `-provider PROVIDER_CLASS_NAME'
    596      A fully qualified class name of a Security Provider to add to the
    597      current list of Security Providers already installed in the JVM
    598      in-use. If a provider class is specified with this option, and was
    599      successfully added to the runtime -i.e. it was not already
    600      installed- then the tool will attempt to removed this Security
    601      Provider before exiting.
    602 
    603 `-file FILE'
    604      Use this option to designate a file to use with a command. When
    605      specified with this option, the value is expected to be the fully
    606      qualified path of a file accessible by the File System. Depending
    607      on the command, the file may be used as input or as output. When
    608      this option is omitted from the command line, `STDIN' will be used
    609      instead, as the source of input, and `STDOUT' will be used instead
    610      as the output destination.
    611 
    612 `-v'
    613      Unless specified otherwise, use this option to enable more verbose
    614      output.
    615 
    616 
    617 
    618 File: cp-tools.info,  Node: Distinguished Names,  Next: Add/Update Commands,  Prev: Common keytool Options,  Up: keytool Tool
    619 
    620 2.2.3 X.500 Distinguished Names
    621 -------------------------------
    622 
    623 A Distinguished Name (or DN) MUST be supplied with some of the
    624 `COMMAND's using a `-dname' option. The syntax of a valid value for
    625 this option MUST follow RFC-2253 specifications. Namely the following
    626 components (with their accepted meaning) will be recognized. Note that
    627 the component name is case-insensitive:
    628 
    629 CN
    630      The Common Name; e.g. `host.domain.com'
    631 
    632 OU
    633      The Organizational Unit; e.g. `IT Department'
    634 
    635 O
    636      The Organization Name; e.g. `The Sample Company'
    637 
    638 L
    639      The Locality Name; e.g. `Sydney'
    640 
    641 ST
    642      The State Name; e.g. `New South Wales'
    643 
    644 C
    645      The 2-letter Country identifier; e.g. `AU'
    646 
    647    When specified with a `-dname' option, each pair of component/value
    648 will be separated from the other with a comma. Each component and value
    649 pair MUST be separated by an equal sign. For example, the following is
    650 a valid DN value:
    651 CN=host.domain.com, O=The Sample Company, L=Sydney, ST=NSW, C=AU
    652 
    653 If the Distinguished Name is required, and no valid default value can
    654 be used, the tool will prompt you to enter the information through the
    655 console.
    656 
    657 
    658 File: cp-tools.info,  Node: Add/Update Commands,  Next: Export Commands,  Prev: Distinguished Names,  Up: keytool Tool
    659 
    660 2.2.4 Add/Update commands
    661 -------------------------
    662 
    663 * Menu:
    664 
    665 * Command -genkey::            Generate private key and self-signed certificate
    666 * Command -import::            Import certificates and certificate replies
    667 * Command -selfcert::          Generate self-signed certificate
    668 * Command -cacert::            Import a CA Trusted Certificate
    669 * Command -identitydb::        Import JDK-1 style identities
    670 
    671 
    672 File: cp-tools.info,  Node: Command -genkey,  Next: Command -import,  Prev: Add/Update Commands,  Up: Add/Update Commands
    673 
    674 2.2.4.1 The `-genkey' command
    675 .............................
    676 
    677 Use this command to generate a new key-pair (both private and public
    678 keys), and save these credentials in the key store as a Key Entry,
    679 associated with the designated (if was specified with the `-alias'
    680 option) or default (if the `-alias' option is omitted) Alias.
    681 
    682    The private key material will be protected with a user-defined
    683 password (see `-keypass' option). The public key on the other hand will
    684 be part of a self-signed X.509 certificate, which will form a 1-element
    685 chain and will be saved in the key store.
    686 
    687 `-alias ALIAS'
    688      For more details *note ALIAS: alias.
    689 
    690 `-keyalg ALGORITHM'
    691      For more details *note ALGORITHM: keyalg.
    692 
    693 `-keysize KEY_SIZE'
    694      For more details *note KEY_SIZE: keysize.
    695 
    696 `-sigalg ALGORITHM'
    697      The canonical name of the digital signature algorithm to use for
    698      signing certificates. If this option is omitted, a default value
    699      will be chosen based on the type of the key-pair; i.e. the
    700      algorithm that ends up being used by the -keyalg option. If the
    701      key-pair generation algorithm is `DSA', the value for the
    702      signature algorithm will be `SHA1withDSA'. If on the other hand
    703      the key-pair generation algorithm is `RSA', then the tool will use
    704      `MD5withRSA' as the signature algorithm.
    705 
    706 `-dname NAME'
    707      This a mandatory value for the command. If no value is specified
    708      -i.e. the `-dname' option is omitted- the tool will prompt you to
    709      enter a Distinguished Name to use as both the Owner and Issuer of
    710      the generated self-signed certificate.
    711 
    712      For more details *note X.500 DISTINGUISHED NAME: dn.
    713 
    714 `-keypass PASSWORD'
    715      Use this option to specify the password which the tool will use to
    716      protect the newly created Key Entry.
    717 
    718      If this option is omitted, you will be prompted to provide a
    719      password.
    720 
    721 `-validity DAY_COUNT'
    722      For more details *note DAY_COUNT: validity.
    723 
    724 `-storetype STORE_TYPE'
    725      For more details *note STORE_TYPE: storetype.
    726 
    727 `-keystore URL'
    728      For more details *note URL: keystore.
    729 
    730 `-storepass PASSWORD'
    731      For more details *note PASSWORD: storepass.
    732 
    733 `-provider PROVIDER_CLASS_NAME'
    734      For more details *note PROVIDER_CLASS_NAME: provider.
    735 
    736 `-v'
    737      For more details *note verbose::.
    738 
    739 
    740 
    741 File: cp-tools.info,  Node: Command -import,  Next: Command -selfcert,  Prev: Command -genkey,  Up: Add/Update Commands
    742 
    743 2.2.4.2 The `-import' command
    744 .............................
    745 
    746 Use this command to read an X.509 certificate, or a PKCS#7 Certificate
    747 Reply from a designated input source and incorporate the certificates
    748 into the key store.
    749 
    750    If the Alias does not already exist in the key store, the tool
    751 treats the certificate read from the input source as a new Trusted
    752 Certificate. It then attempts to discover a chain-of-trust, starting
    753 from that certificate and ending at another Trusted Certificate,
    754 already stored in the key store. If the `-trustcacerts' option is
    755 present, an additional key store, of type `JKS' named `cacerts', and
    756 assumed to be present in `${JAVA_HOME}/lib/security' will also be
    757 consulted if found -`${JAVA_HOME}' refers to the location of an
    758 installed Java Runtime Environment (JRE). If no chain-of-trust can be
    759 established, and unless the `-noprompt' option has been specified, the
    760 certificate is printed to `STDOUT' and the user is prompted for a
    761 confirmation.
    762 
    763    If Alias exists in the key store, the tool will treat the
    764 certificate(s) read from the input source as a Certificate Reply, which
    765 can be a chain of certificates, that eventually would replace the chain
    766 of certificates associated with the Key Entry of that Alias. The
    767 substitution of the certificates only occurs if a chain-of-trust can be
    768 established between the bottom certificate of the chain read from the
    769 input file and the Trusted Certificates already present in the key
    770 store. Again, if the `-trustcacerts' option is specified, additional
    771 Trusted Certificates in the same `cacerts' key store will be
    772 considered. If no chain-of-trust can be established, the operation will
    773 abort.
    774 
    775 `-alias ALIAS'
    776      For more details *note ALIAS: alias.
    777 
    778 `-file FILE'
    779      For more details *note FILE: file.
    780 
    781 `-keypass PASSWORD'
    782      Use this option to specify the password which the tool will use to
    783      protect the Key Entry associated with the designated Alias, when
    784      replacing this Alias' chain of certificates with that found in the
    785      certificate reply.
    786 
    787      If this option is omitted, and the chain-of-trust for the
    788      certificate reply has been established, the tool will first
    789      attempt to unlock the Key Entry using the same password protecting
    790      the key store. If this fails, you will then be prompted to provide
    791      a password.
    792 
    793 `-noprompt'
    794      Use this option to prevent the tool from prompting the user.
    795 
    796 `-trustcacerts'
    797      Use this option to indicate to the tool that a key store, of type
    798      `JKS', named `cacerts', and usually located in `lib/security' in
    799      an installed Java Runtime Environment should be considered when
    800      trying to establish chain-of-trusts.
    801 
    802 `-storetype STORE_TYPE'
    803      For more details *note STORE_TYPE: storetype.
    804 
    805 `-keystore URL'
    806      For more details *note URL: keystore.
    807 
    808 `-storepass PASSWORD'
    809      For more details *note PASSWORD: storepass.
    810 
    811 `-provider PROVIDER_CLASS_NAME'
    812      For more details *note PROVIDER_CLASS_NAME: provider.
    813 
    814 `-v'
    815      For more details *note verbose::.
    816 
    817 
    818 
    819 File: cp-tools.info,  Node: Command -selfcert,  Next: Command -cacert,  Prev: Command -import,  Up: Add/Update Commands
    820 
    821 2.2.4.3 The `-selfcert' command
    822 ...............................
    823 
    824 Use this command to generate a self-signed X.509 version 1 certificate.
    825 The newly generated certificate will form a chain of one element which
    826 will replace the previous chain associated with the designated Alias
    827 (if `-alias' option was specified), or the default Alias (if `-alias'
    828 option was omitted).
    829 
    830 `-alias ALIAS'
    831      For more details *note ALIAS: alias.
    832 
    833 `-sigalg ALGORITHM'
    834      The canonical name of the digital signature algorithm to use for
    835      signing the certificate. If this option is omitted, a default
    836      value will be chosen based on the type of the private key
    837      associated with the designated Alias. If the private key is a
    838      `DSA' one, the value for the signature algorithm will be
    839      `SHA1withDSA'. If on the other hand the private key is an `RSA'
    840      one, then the tool will use `MD5withRSA' as the signature
    841      algorithm.
    842 
    843 `-dname NAME'
    844      Use this option to specify the Distinguished Name of the newly
    845      generated self-signed certificate. If this option is omitted, the
    846      existing Distinguished Name of the base certificate in the chain
    847      associated with the designated Alias will be used instead.
    848 
    849      For more details *note X.500 DISTINGUISHED NAME: dn.
    850 
    851 `-validity DAY_COUNT'
    852      For more details *note DAY_COUNT: validity.
    853 
    854 `-keypass PASSWORD'
    855      Use this option to specify the password which the tool will use to
    856      unlock the Key Entry associated with the designated Alias.
    857 
    858      If this option is omitted, the tool will first attempt to unlock
    859      the Key Entry using the same password protecting the key store. If
    860      this fails, you will then be prompted to provide a password.
    861 
    862 `-storetype STORE_TYPE'
    863      For more details *note STORE_TYPE: storetype.
    864 
    865 `-keystore URL'
    866      For more details *note URL: keystore.
    867 
    868 `-storepass PASSWORD'
    869      For more details *note PASSWORD: storepass.
    870 
    871 `-provider PROVIDER_CLASS_NAME'
    872      For more details *note PROVIDER_CLASS_NAME: provider.
    873 
    874 `-v'
    875      For more details *note verbose::.
    876 
    877 
    878 
    879 File: cp-tools.info,  Node: Command -cacert,  Next: Command -identitydb,  Prev: Command -selfcert,  Up: Add/Update Commands
    880 
    881 2.2.4.4 The `-cacert' command
    882 .............................
    883 
    884 Use this command to import, a CA certificate and add it to the key
    885 store as a Trusted Certificate. The Alias for this new entry will be
    886 constructed from the FILE's base-name after replacing hyphens and dots
    887 with underscores.
    888 
    889    This command is useful when used in a script that recursively visits
    890 a directory of CA certificates to populate a `cacerts.gkr' Key Store of
    891 trusted certificates which can then be used commands that specify the
    892 `-trustcacerts' option.
    893 
    894 `-file FILE'
    895      For more details *note FILE: file.
    896 
    897 `-storetype STORE_TYPE'
    898      For more details *note STORE_TYPE: storetype.
    899 
    900 `-keystore URL'
    901      For more details *note URL: keystore.
    902 
    903 `-storepass PASSWORD'
    904      For more details *note PASSWORD: storepass.
    905 
    906 `-provider PROVIDER_CLASS_NAME'
    907      For more details *note PROVIDER_CLASS_NAME: provider.
    908 
    909 `-v'
    910      For more details *note verbose::.
    911 
    912 
    913 
    914 File: cp-tools.info,  Node: Command -identitydb,  Prev: Command -cacert,  Up: Add/Update Commands
    915 
    916 2.2.4.5 The `-identitydb' command
    917 .................................
    918 
    919 NOT IMPLEMENTED YET.
    920 
    921    Use this command to import a JDK 1.1 style Identity Database.
    922 
    923 `-file FILE'
    924      For more details *note FILE: file.
    925 
    926 `-storetype STORE_TYPE'
    927      For more details *note STORE_TYPE: storetype.
    928 
    929 `-keystore URL'
    930      For more details *note URL: keystore.
    931 
    932 `-storepass PASSWORD'
    933      For more details *note PASSWORD: storepass.
    934 
    935 `-provider PROVIDER_CLASS_NAME'
    936      For more details *note PROVIDER_CLASS_NAME: provider.
    937 
    938 `-v'
    939      For more details *note verbose::.
    940 
    941 
    942 
    943 File: cp-tools.info,  Node: Export Commands,  Next: Display Commands,  Prev: Add/Update Commands,  Up: keytool Tool
    944 
    945 2.2.5 Export commands
    946 ---------------------
    947 
    948 * Menu:
    949 
    950 * Command -certreq::           Generate Certificate Signing Requests (CSR)
    951 * Command -export::            Export a certificate in a Key Store
    952 
    953 
    954 File: cp-tools.info,  Node: Command -certreq,  Next: Command -export,  Prev: Export Commands,  Up: Export Commands
    955 
    956 2.2.5.1 The `-certreq' command
    957 ..............................
    958 
    959 Use this command to generate a PKCS#10 Certificate Signing Request
    960 (CSR) and write it to a designated output destination. The contents of
    961 the destination should look something like the following:
    962 
    963      -----BEGIN NEW CERTIFICATE REQUEST-----
    964      MI...QAwXzEUMBIGA1UEAwwLcnNuQGdudS5vcmcxGzAZBgNVBAoMElUg
    965      Q2...A0GA1UEBwwGU3lkbmV5MQwwCgYDVQQIDANOU1cxCzAJBgNVBACC
    966      ...
    967      FC...IVwNVOfQLRX+O5kAhQ/a4RTZme2L8PnpvgRwrf7Eg8D6w==
    968      -----END NEW CERTIFICATE REQUEST-----
    969 
    970    IMPORTANT: Some documentation (e.g. RSA examples) claims that the
    971 `Attributes' field, in the CSR is `OPTIONAL' while RFC-2986 implies the
    972 opposite. This implementation considers this field, by default, as
    973 `OPTIONAL', unless the option `-attributes' is specified on the command
    974 line.
    975 
    976 `-alias ALIAS'
    977      For more details *note ALIAS: alias.
    978 
    979 `-sigalg ALGORITHM'
    980      The canonical name of the digital signature algorithm to use for
    981      signing the certificate. If this option is omitted, a default
    982      value will be chosen based on the type of the private key
    983      associated with the designated Alias. If the private key is a
    984      `DSA' one, the value for the signature algorithm will be
    985      `SHA1withDSA'. If on the other hand the private key is an `RSA'
    986      one, then the tool will use `MD5withRSA' as the signature
    987      algorithm.
    988 
    989 `-file FILE'
    990      For more details *note FILE: file.
    991 
    992 `-keypass PASSWORD'
    993      Use this option to specify the password which the tool will use to
    994      unlock the Key Entry associated with the designated Alias.
    995 
    996      If this option is omitted, the tool will first attempt to unlock
    997      the Key Entry using the same password protecting the key store. If
    998      this fails, you will then be prompted to provide a password.
    999 
    1000 `-storetype STORE_TYPE'
    1001      For more details *note STORE_TYPE: storetype.
    1002 
    1003 `-keystore URL'
    1004      For more details *note URL: keystore.
    1005 
    1006 `-storepass PASSWORD'
    1007      For more details *note PASSWORD: storepass.
    1008 
    1009 `-provider PROVIDER_CLASS_NAME'
    1010      For more details *note PROVIDER_CLASS_NAME: provider.
    1011 
    1012 `-v'
    1013      For more details *note verbose::.
    1014 
    1015 `-attributes'
    1016      Use this option to force the tool to encode a `NULL' DER value in
    1017      the CSR as the value of the `Attributes' field.
    1018 
    1019 
    1020 
    1021 File: cp-tools.info,  Node: Command -export,  Prev: Command -certreq,  Up: Export Commands
    1022 
    1023 2.2.5.2 The `-export' command
    1024 .............................
    1025 
    1026 Use this command to export a certificate stored in a key store to a
    1027 designated output destination, either in binary format (if the `-v'
    1028 option is specified), or in RFC-1421 compliant encoding (if the `-rfc'
    1029 option is specified instead).
    1030 
    1031 `-alias ALIAS'
    1032      For more details *note ALIAS: alias.
    1033 
    1034 `-file FILE'
    1035      For more details *note FILE: file.
    1036 
    1037 `-storetype STORE_TYPE'
    1038      For more details *note STORE_TYPE: storetype.
    1039 
    1040 `-keystore URL'
    1041      For more details *note URL: keystore.
    1042 
    1043 `-storepass PASSWORD'
    1044      For more details *note PASSWORD: storepass.
    1045 
    1046 `-provider PROVIDER_CLASS_NAME'
    1047      For more details *note PROVIDER_CLASS_NAME: provider.
    1048 
    1049 `-rfc'
    1050      Use RFC-1421 specifications when encoding the output.
    1051 
    1052 `-v'
    1053      Output the certificate in binary DER encoding. This is the default
    1054      output format of the command if neither `-rfc' nor `-v' options
    1055      were detected on the command line. If both this option and the
    1056      `-rfc' option are detected on the command line, the tool will opt
    1057      for the RFC-1421 style encoding.
    1058 
    1059 
    1060 
    1061 File: cp-tools.info,  Node: Display Commands,  Next: Management Commands,  Prev: Export Commands,  Up: keytool Tool
    1062 
    1063 2.2.6 Display commands
    1064 ----------------------
    1065 
    1066 * Menu:
    1067 
    1068 * Command -list::              Display information about one or all Aliases
    1069 * Command -printcert::         Print a certificate or a certificate fingerprint
    1070 
    1071 
    1072 File: cp-tools.info,  Node: Command -list,  Next: Command -printcert,  Prev: Display Commands,  Up: Display Commands
    1073 
    1074 2.2.6.1 The `-list' command
    1075 ...........................
    1076 
    1077 Use this command to print one or all of a key store entries to
    1078 `STDOUT'. Usually this command will only print a fingerprint of the
    1079 certificate, unless either the `-rfc' or the `-v' option is specified.
    1080 
    1081 `-alias ALIAS'
    1082      If this option is omitted, the tool will print ALL the entries
    1083      found in the key store.
    1084 
    1085      For more details *note ALIAS: alias.
    1086 
    1087 `-storetype STORE_TYPE'
    1088      For more details *note STORE_TYPE: storetype.
    1089 
    1090 `-keystore URL'
    1091      For more details *note URL: keystore.
    1092 
    1093 `-storepass PASSWORD'
    1094      For more details *note PASSWORD: storepass.
    1095 
    1096 `-provider PROVIDER_CLASS_NAME'
    1097      For more details *note PROVIDER_CLASS_NAME: provider.
    1098 
    1099 `-rfc'
    1100      Use RFC-1421 specifications when encoding the output.
    1101 
    1102 `-v'
    1103      Output the certificate in human-readable format. If both this
    1104      option and the `-rfc' option are detected on the command line, the
    1105      tool will opt for the human-readable form and will not abort the
    1106      command.
    1107 
    1108 
    1109 
    1110 File: cp-tools.info,  Node: Command -printcert,  Prev: Command -list,  Up: Display Commands
    1111 
    1112 2.2.6.2 The `-printcert' command
    1113 ................................
    1114 
    1115 Use this command to read a certificate from a designated input source
    1116 and print it to `STDOUT' in a human-readable form.
    1117 
    1118 `-file FILE'
    1119      For more details *note FILE: file.
    1120 
    1121 `-v'
    1122      For more details *note verbose::.
    1123 
    1124 
    1125 
    1126 File: cp-tools.info,  Node: Management Commands,  Prev: Display Commands,  Up: keytool Tool
    1127 
    1128 2.2.7 Management commands
    1129 -------------------------
    1130 
    1131 * Menu:
    1132 
    1133 * Command -keyclone::          Clone a Key Entry in a Key Store
    1134 * Command -storepasswd::       Change the password protecting a Key Store
    1135 * Command -keypasswd::         Change the password protecting a Key Entry
    1136 * Command -delete::            Remove an entry in a Key Store
    1137 
    1138 
    1139 File: cp-tools.info,  Node: Command -keyclone,  Next: Command -storepasswd,  Prev: Management Commands,  Up: Management Commands
    1140 
    1141 2.2.7.1 The `-keyclone' command
    1142 ...............................
    1143 
    1144 Use this command to clone an existing Key Entry and store it under a
    1145 new (different) Alias protecting, its private key material with
    1146 possibly a new password.
    1147 
    1148 `-alias ALIAS'
    1149      For more details *note ALIAS: alias.
    1150 
    1151 `-dest ALIAS'
    1152      Use this option to specify the new Alias which will be used to
    1153      identify the cloned copy of the Key Entry.
    1154 
    1155 `-keypass PASSWORD'
    1156      Use this option to specify the password which the tool will use to
    1157      unlock the Key Entry associated with the designated Alias.
    1158 
    1159      If this option is omitted, the tool will first attempt to unlock
    1160      the Key Entry using the same password protecting the key store. If
    1161      this fails, you will then be prompted to provide a password.
    1162 
    1163 `-new PASSWORD'
    1164      Use this option to specify the password protecting the private key
    1165      material of the newly cloned copy of the Key Entry.
    1166 
    1167 `-storetype STORE_TYPE'
    1168      For more details *note STORE_TYPE: storetype.
    1169 
    1170 `-keystore URL'
    1171      For more details *note URL: keystore.
    1172 
    1173 `-storepass PASSWORD'
    1174      For more details *note PASSWORD: storepass.
    1175 
    1176 `-provider PROVIDER_CLASS_NAME'
    1177      For more details *note PROVIDER_CLASS_NAME: provider.
    1178 
    1179 `-v'
    1180      For more details *note verbose::.
    1181 
    1182 
    1183 
    1184 File: cp-tools.info,  Node: Command -storepasswd,  Next: Command -keypasswd,  Prev: Command -keyclone,  Up: Management Commands
    1185 
    1186 2.2.7.2 The `-storepasswd' command
    1187 ..................................
    1188 
    1189 Use this command to change the password protecting a key store.
    1190 
    1191 `-new PASSWORD'
    1192      The new, and different, password which will be used to protect the
    1193      designated key store.
    1194 
    1195 `-storetype STORE_TYPE'
    1196      For more details *note STORE_TYPE: storetype.
    1197 
    1198 `-keystore URL'
    1199      For more details *note URL: keystore.
    1200 
    1201 `-storepass PASSWORD'
    1202      For more details *note PASSWORD: storepass.
    1203 
    1204 `-provider PROVIDER_CLASS_NAME'
    1205      For more details *note PROVIDER_CLASS_NAME: provider.
    1206 
    1207 `-v'
    1208      For more details *note verbose::.
    1209 
    1210 
    1211 
    1212 File: cp-tools.info,  Node: Command -keypasswd,  Next: Command -delete,  Prev: Command -storepasswd,  Up: Management Commands
    1213 
    1214 2.2.7.3 The `-keypasswd' command
    1215 ................................
    1216 
    1217 Use this command to change the password protecting the private key
    1218 material of a designated Key Entry.
    1219 
    1220 `-alias ALIAS'
    1221      For more details *note ALIAS: alias.
    1222 
    1223      Use this option to specify the password which the tool will use to
    1224      unlock the Key Entry associated with the designated Alias.
    1225 
    1226      If this option is omitted, the tool will first attempt to unlock
    1227      the Key Entry using the same password protecting the key store. If
    1228      this fails, you will then be prompted to provide a password.
    1229 
    1230 `-new PASSWORD'
    1231      The new, and different, password which will be used to protect the
    1232      private key material of the designated Key Entry.
    1233 
    1234 `-storetype STORE_TYPE'
    1235      For more details *note STORE_TYPE: storetype.
    1236 
    1237 `-keystore URL'
    1238      For more details *note URL: keystore.
    1239 
    1240 `-storepass PASSWORD'
    1241      For more details *note PASSWORD: storepass.
    1242 
    1243 `-provider PROVIDER_CLASS_NAME'
    1244      For more details *note PROVIDER_CLASS_NAME: provider.
    1245 
    1246 `-v'
    1247      For more details *note verbose::.
    1248 
    1249 
    1250 
    1251 File: cp-tools.info,  Node: Command -delete,  Prev: Command -keypasswd,  Up: Management Commands
    1252 
    1253 2.2.7.4 The `-delete' command
    1254 .............................
    1255 
    1256 Use this command to delete a designated key store entry.
    1257 
    1258 `-alias ALIAS'
    1259      For more details *note ALIAS: alias.
    1260 
    1261 `-storetype STORE_TYPE'
    1262      For more details *note STORE_TYPE: storetype.
    1263 
    1264 `-keystore URL'
    1265      For more details *note URL: keystore.
    1266 
    1267 `-storepass PASSWORD'
    1268      For more details *note PASSWORD: storepass.
    1269 
    1270 `-provider PROVIDER_CLASS_NAME'
    1271      For more details *note PROVIDER_CLASS_NAME: provider.
    1272 
    1273 `-v'
    1274      For more details *note verbose::.
    1275 
    1276 
    1277 
    1278 File: cp-tools.info,  Node: Other Tools,  Next: I18N Issues,  Prev: Security Tools,  Up: Top
    1279 
    1280 3 Other Tools
    1281 *************
    1282 
    1283 This is a list of currently undocumented classpath tools: jar, javah,
    1284 gcjh, native2ascii, orbd, serialver, rmid, rmiregistry and tnameserv.
    1285 
    1286 * Menu:
    1287 
    1288 * jar Tool::                   Archive tool for Java archives
    1289 * javah Tool::                 A java header compiler
    1290 * gcjh Tool::                  A java header compiler (old version)
    1291 * native2ascii Tool::          An encoding converter
    1292 * orbd Tool::                  An object request broker daemon
    1293 * serialver Tool::             A serial version command
    1294 * rmid Tool::                  RMI activation daemon
    1295 * rmiregistry Tool::           Remote object registry
    1296 * tnameserv Tool::             Naming service
    1297 
    1298 
    1299 File: cp-tools.info,  Node: jar Tool,  Next: javah Tool,  Up: Other Tools
    1300 
    1301 3.1 The `jar' Tool
    1302 ==================
    1303 
    1304 `gjar' is an implementation of Sun's jar utility that comes with the
    1305 JDK.
    1306 
    1307    If any file is a directory then it is processed recursively.  The
    1308 manifest file name and the archive file name needs to be specified in
    1309 the same order the `-m' and `-f' flags are specified.
    1310 
    1311    Operation mode:
    1312 
    1313 `-c'
    1314      Create new archive.
    1315 
    1316 `-t'
    1317      List table of contents for archive.
    1318 
    1319 `-x'
    1320      Extract named (or all) files from archive.
    1321 
    1322 `-u'
    1323      Update existing archive.
    1324 
    1325 `-i FILE'
    1326      Compute archive index.
    1327 
    1328    Operation modifiers:
    1329 
    1330 `-f FILE'
    1331      Specify archive file name.
    1332 
    1333 `-0'
    1334      Store only; use no ZIP compression.
    1335 
    1336 `-v'
    1337      Generate verbose output on standard output.
    1338 
    1339 `-M'
    1340      Do not create a manifest file for the entries.
    1341 
    1342 `-m MANIFEST'
    1343      Include manifest information from specified MANIFEST file.
    1344 
    1345    File name selection:
    1346 
    1347 `-C DIR FILE'
    1348      Change to the DIR and include the following FILE.
    1349 
    1350 `-@'
    1351      Read the names of the files to add to the archive from stdin.  This
    1352      option is supported only in combination with `-c' or `-u'.  Non
    1353      standard option added in the GCC version.
    1354 
    1355    Standard options:
    1356 
    1357 `-help'
    1358      Print help text, then exit.
    1359 
    1360 `-version'
    1361      Print version number, then exit.
    1362 
    1363 `-JOPTION'
    1364      Pass argument to the Java runtime.
    1365 
    1366    java(1), ...
    1367 
    1368 
    1369 File: cp-tools.info,  Node: javah Tool,  Next: gcjh Tool,  Prev: jar Tool,  Up: Other Tools
    1370 
    1371 3.2 The `javah' Tool
    1372 ====================
    1373 
    1374 The `gjavah' program is used to generate header files from class files.
    1375 It can generate both CNI and JNI header files, as well as stub
    1376 implementation files which can be used as a basis for implementing the
    1377 required native methods.
    1378 
    1379 `-d DIR'
    1380      Set output directory.
    1381 
    1382 `-o FILE'
    1383      Set output file (only one of `-d' or `-o' may be used).
    1384 
    1385 `-cmdfile FILE'
    1386      Read command file.
    1387 
    1388 `-all DIR'
    1389      Operate on all class files under directory DIR.
    1390 
    1391 `-stubs'
    1392      Emit stub implementation.
    1393 
    1394 `-jni'
    1395      Emit JNI stubs or header (default).
    1396 
    1397 `-cni'
    1398      Emit CNI stubs or header (default JNI).
    1399 
    1400 `-verbose'
    1401      Set verbose mode.
    1402 
    1403 `-force'
    1404      Output files should always be written.
    1405 
    1406    Class path options:
    1407 `-classpath PATH'
    1408      Set the class path.
    1409 
    1410 `-IDIR'
    1411      Add directory to class path.
    1412 
    1413 `-bootclasspath PATH'
    1414      Set the boot class path.
    1415 
    1416 `-extdirs PATH'
    1417      Set the extension directory path.
    1418 
    1419    Standard options:
    1420 `-help'
    1421      Print help text, then exit.
    1422 
    1423 `-version'
    1424      Print version number, then exit.
    1425 
    1426 `-JOPTION'
    1427      Pass argument to the Java runtime.
    1428 
    1429    javac(1), ...
    1430 
    1431 
    1432 File: cp-tools.info,  Node: gcjh Tool,  Next: native2ascii Tool,  Prev: javah Tool,  Up: Other Tools
    1433 
    1434 3.3 The `gcjh' Tool
    1435 ===================
    1436 
    1437 The `gcjh' program is used to generate header files from class files.
    1438 It can generate both CNI and JNI header files, as well as stub
    1439 implementation files which can be used as a basis for implementing the
    1440 required native methods.  It is similar to `javah' but has slightly
    1441 different command line options, and defaults to CNI.
    1442 
    1443    See `javah' for a full description; this page only lists the
    1444 additional options provided by `gcjh'.
    1445 
    1446    CNI text options
    1447 `-add TEXT'
    1448      Insert TEXT into class body.
    1449 
    1450 `-append TEXT'
    1451      Append TEXT after class declaration.
    1452 
    1453 `-friend TEXT'
    1454      Insert TEXT as a `friend' declaration.
    1455 
    1456 `-prepend TEXT'
    1457      Insert TEXT before start of class.
    1458 
    1459    Compatibility options (unused)
    1460 `-td DIR'
    1461 `-M'
    1462 `-MM'
    1463 `-MD'
    1464 `-MMD'
    1465      Unused compatibility option.
    1466 
    1467    Standard options:
    1468 `-help'
    1469      Print help text, then exit.
    1470 
    1471 `-version'
    1472      Print version number, then exit.
    1473 
    1474 `-JOPTION'
    1475      Pass argument to the Java runtime.
    1476 
    1477    javac(1), javah(1), ...
    1478 
    1479 
    1480 File: cp-tools.info,  Node: native2ascii Tool,  Next: orbd Tool,  Prev: gcjh Tool,  Up: Other Tools
    1481 
    1482 3.4 The `native2ascii' Tool
    1483 ===========================
    1484 
    1485 To be written ...
    1486 
    1487 `-encoding NAME'
    1488      Set the encoding to use.
    1489 
    1490 `-reversed'
    1491      Convert from encoding to native.
    1492 
    1493    Standard options:
    1494 `-help'
    1495      Print help text, then exit.
    1496 
    1497 `-version'
    1498      Print version number, then exit.
    1499 
    1500 `-JOPTION'
    1501      Pass argument to the Java runtime.
    1502 
    1503    javac(1), ...
    1504 
    1505 
    1506 File: cp-tools.info,  Node: orbd Tool,  Next: serialver Tool,  Prev: native2ascii Tool,  Up: Other Tools
    1507 
    1508 3.5 The `orbd' object request broker daemon
    1509 ===========================================
    1510 
    1511 To be written ...
    1512 
    1513 `-ORBInitialPort PORT'
    1514      Port on which persistent naming service is to be started.
    1515 
    1516 `-ior FILE'
    1517      File in which to store persistent naming service's IOR reference
    1518 
    1519 `-directory DIR'
    1520      Directory in which to store persistent data.
    1521 
    1522 `-restart'
    1523      Restart persistent naming service, clearing persistent naming
    1524      database.
    1525 
    1526    Standard options:
    1527 `-help'
    1528      Print help text, then exit.
    1529 
    1530 `-version'
    1531      Print version number, then exit.
    1532 
    1533 `-JOPTION'
    1534      Pass argument to the Java runtime.
    1535 
    1536    java(1), ...
    1537 
    1538 
    1539 File: cp-tools.info,  Node: serialver Tool,  Next: rmid Tool,  Prev: orbd Tool,  Up: Other Tools
    1540 
    1541 3.6 The `serialver' version command
    1542 ===================================
    1543 
    1544 Print the serialVersionUID of the specified classes.
    1545 
    1546 `-classpath PATH'
    1547      Class path to use to find classes.
    1548 
    1549    Standard options:
    1550 `-help'
    1551      Print help text, then exit.
    1552 
    1553 `-version'
    1554      Print version number, then exit.
    1555 
    1556 `-JOPTION'
    1557      Pass argument to the Java runtime.
    1558 
    1559    javac(1), ...
    1560 
    1561 
    1562 File: cp-tools.info,  Node: rmid Tool,  Next: rmiregistry Tool,  Prev: serialver Tool,  Up: Other Tools
    1563 
    1564 3.7 The `rmid' RMI activation system daemon
    1565 ===========================================
    1566 
    1567 `rmiregistry' starts a remote object registry on the current host.  If
    1568 no port number is specified, then port 1099 is used.
    1569 
    1570    Activation process control:
    1571 `-port PORT'
    1572      Port on which activation system is to be started.
    1573 
    1574 `-restart'
    1575      Restart activation system, clearing persistent naming database, if
    1576      any.
    1577 
    1578 `-stop'
    1579      Stop activation system.
    1580 
    1581    Persistence:
    1582 `-persistent'
    1583      Make activation system persistent.
    1584 
    1585 `-directory DIR'
    1586      Directory in which to store persistent data.
    1587 
    1588    Debugging:
    1589 `-verbose'
    1590      Log binding events to standard out.
    1591 
    1592    Standard options:
    1593 `-help'
    1594      Print help text, then exit.
    1595 
    1596 `-version'
    1597      Print version number, then exit.
    1598 
    1599 `-JOPTION'
    1600      Pass argument to the Java runtime.
    1601 
    1602    java(1), ...
    1603 
    1604 
    1605 File: cp-tools.info,  Node: rmiregistry Tool,  Next: tnameserv Tool,  Prev: rmid Tool,  Up: Other Tools
    1606 
    1607 3.8 The `rmiregistry' Tool
    1608 ==========================
    1609 
    1610 `grmiregistry' starts a remote object registry on the current host.  If
    1611 no port number is specified, then port 1099 is used.
    1612 
    1613    Registry process control:
    1614 `-restart'
    1615      Restart RMI naming service, clearing persistent naming database, if
    1616      any.
    1617 
    1618 `-stop'
    1619      Stop RMI naming service.
    1620 
    1621    Persistence:
    1622 `-persistent'
    1623      Make RMI naming service persistent.
    1624 
    1625 `-directory DIR'
    1626      Directory in which to store persistent data.
    1627 
    1628    Debugging:
    1629 `-verbose'
    1630      Log binding events to standard out.
    1631 
    1632    Standard options:
    1633 `-help'
    1634      Print help text, then exit.
    1635 
    1636 `-version'
    1637      Print version number, then exit.
    1638 
    1639 `-JOPTION'
    1640      Pass argument to the Java runtime.
    1641 
    1642    java(1), ...
    1643 
    1644 
    1645 File: cp-tools.info,  Node: tnameserv Tool,  Prev: rmiregistry Tool,  Up: Other Tools
    1646 
    1647 3.9 The `tnameserv' Tool
    1648 ========================
    1649 
    1650 To be written ...
    1651 
    1652 `-ORBInitialPort PORT'
    1653      Port on which naming service is to be started.
    1654 
    1655 `-ior FILE'
    1656      File in which to store naming service's IOR reference.
    1657 
    1658    Standard options:
    1659 `-help'
    1660      Print help text, then exit.
    1661 
    1662 `-version'
    1663      Print version number, then exit.
    1664 
    1665 `-JOPTION'
    1666      Pass argument to the Java runtime.
    1667 
    1668    java(1), ...
    1669 
    1670 
    1671 File: cp-tools.info,  Node: I18N Issues,  Prev: Other Tools,  Up: Top
    1672 
    1673 4 I18N Issues
    1674 *************
    1675 
    1676 Some tools -*note Security Tools::- allow using other than the English
    1677 language when prompting the User for input, and outputing messages.
    1678 This chapter describes the elements used to offer this support and how
    1679 they can be adapted for use with specific languages.
    1680 
    1681 * Menu:
    1682 
    1683 * Language Resources::         Where resources are located
    1684 * Message Formats::            How messages are internationalized
    1685 
    1686 
    1687 File: cp-tools.info,  Node: Language Resources,  Next: Message Formats,  Prev: I18N Issues,  Up: I18N Issues
    1688 
    1689 4.1 Language-specific resources
    1690 ===============================
    1691 
    1692 The Tools use Java `ResourceBundle's to store messages, and message
    1693 templates they use at runtime to generate the message text itself,
    1694 depending on the locale in use at the time.
    1695 
    1696    The Resource Bundles these tools use are essentially Java Properties
    1697 files consisting of a set of Name/Value pairs. The Name is the Propery
    1698 Name and the Value is a substitution string that is used when the code
    1699 references the associated Name. For example the following is a line in
    1700 a Resource Bundle used by the `keytool' Tool:
    1701 
    1702      Command.23=A correct key password MUST be provided
    1703 
    1704    When the tool needs to signal a mandatory but missing key password,
    1705 it would reference the property named `Command.23' and the message "`A
    1706 correct key password MUST be provided'" will be used instead. This
    1707 indirect referencing of "resources" permits replacing, as late as
    1708 possible, the English strings with strings in other languages, provided
    1709 of course Resource Bundles in those languages are provided.
    1710 
    1711    For the GNU Classpath Tools described in this Guide, the Resource
    1712 Bundles are files named `messages[_ll[_CC[_VV]]].properties' where:
    1713 
    1714 LL
    1715      Is the 2-letter code for the Language,
    1716 
    1717 CC
    1718      Is the 2-letter code for the Region, and
    1719 
    1720 VV
    1721      Is the 2-letter code for the Variant of the language.
    1722 
    1723    The complete list of language codes can be found at Code for the
    1724 representation of names of languages
    1725 (http://ftp.ics.uci.edu/pub/ietf/http/related/iso639.txt). A similar
    1726 list for the region codes can be found at ISO 3166 Codes (Countries)
    1727 (http://userpage.chemie.fu-berlin.de/diverse/doc/ISO_3166.html).
    1728 
    1729    The location of the Resource Bundles for the GNU Classpath Tools is
    1730 specific to each tool. The next table shows where these files are found
    1731 in a standard GNU Classpath distribution:
    1732 
    1733 `jarsigner'
    1734      `gnu/classpath/tools/jarsigner'
    1735 
    1736 `keytool'
    1737      `gnu/classpath/tools/keytool'
    1738 
    1739    The collection of Resource Bundles in a location act as an inverted
    1740 tree with a parent-child relationship. For example suppose in the
    1741 `gnu/classpath/tools/keytool' there are 3 message bundles named:
    1742 
    1743   1. `messages.properties'
    1744 
    1745   2. `messages_fr.properties'
    1746 
    1747   3. `messages_fr_FR.properties'
    1748 
    1749    In the above example, bundle #1 will act as the parent of bundle #2,
    1750 which in turn will act as the parent for bundle #3. This ordering is
    1751 used by the Java runtime to choose which file to load based on the set
    1752 Locale. For example if the Locale is `fr_CH', `messages_fr.properties'
    1753 will be used because (a) `messages_fr_CH.properties' does not exist,
    1754 but (b) `messages_fr.properties' is the parent for the required bundle,
    1755 and it exists. As another example, suppose the Locale was set to
    1756 `en_AU'; then the tool will end up using `messages.properties' because
    1757 (a) `messages_en_AU.properties' does not exist, (b)
    1758 `messages_en.properties' which is the parent for the required bundle
    1759 does not exist, but (c) `messages.properties' exists and is the root of
    1760 the hierarchy.
    1761 
    1762    You can see from the examples above that `messages.properties' is
    1763 the safety net that the Java runtime falls back to when failing to find
    1764 a specific bunlde and its parent(s). This file is always provided with
    1765 the Tool. In time, more localized versions will be included to cater
    1766 for other languages.
    1767 
    1768    In the meantime, if you are willing to contribute localized versions
    1769 of these resources, grab the `messages.properties' for a specific tool;
    1770 translate it; save it with the appropriate language and region suffix
    1771 and mail it to `classpath@gnu.org'.
    1772 
    1773 
    1774 File: cp-tools.info,  Node: Message Formats,  Prev: Language Resources,  Up: I18N Issues
    1775 
    1776 4.2 Message formats
    1777 ===================
    1778 
    1779 If you open any of the `messages.properties' described in the previous
    1780 section, you may see properties that look like so:
    1781 
    1782      Command.67=Issuer: {0}
    1783      Command.68=Serial number: {0,number}
    1784      Command.69=Valid from: {0,date,full} - {0,time,full}
    1785      Command.70=\ \ \ \ \ until: {0,date,full} - {0,time,full}
    1786 
    1787    These are Message Formats used by the tools to customize a text
    1788 string that will then be used either as a prompt for User input or as
    1789 output.
    1790 
    1791    If you are translating a `messages.properties' be careful not to
    1792 alter text between curly braces.
    1793 
    1794 
    1795 
    1796 Tag Table:
    1797 Node: Top445
    1798 Node: Applet Tools3894
    1799 Node: appletviewer Tool4467
    1800 Node: gcjwebplugin7582
    1801 Node: Security Tools7894
    1802 Node: jarsigner Tool8547
    1803 Node: Common jarsigner Options9594
    1804 Node: Signing Options10909
    1805 Node: Verification Options13491
    1806 Node: keytool Tool14079
    1807 Node: Getting Help18507
    1808 Node: Common keytool Options19251
    1809 Ref: alias19524
    1810 Ref: keyalg19906
    1811 Ref: keysize20136
    1812 Ref: validity20401
    1813 Ref: storetype20616
    1814 Ref: storepass20947
    1815 Ref: keystore21144
    1816 Ref: provider21687
    1817 Ref: file22094
    1818 Ref: verbose22565
    1819 Node: Distinguished Names22657
    1820 Ref: dn22851
    1821 Node: Add/Update Commands23914
    1822 Node: Command -genkey24442
    1823 Node: Command -import26850
    1824 Node: Command -selfcert29994
    1825 Node: Command -cacert32173
    1826 Node: Command -identitydb33226
    1827 Node: Export Commands33884
    1828 Node: Command -certreq34200
    1829 Node: Command -export36606
    1830 Node: Display Commands37803
    1831 Node: Command -list38135
    1832 Node: Command -printcert39268
    1833 Node: Management Commands39652
    1834 Node: Command -keyclone40084
    1835 Node: Command -storepasswd41487
    1836 Node: Command -keypasswd42216
    1837 Node: Command -delete43410
    1838 Node: Other Tools44033
    1839 Node: jar Tool44818
    1840 Node: javah Tool46210
    1841 Node: gcjh Tool47429
    1842 Node: native2ascii Tool48542
    1843 Node: orbd Tool49003
    1844 Node: serialver Tool49733
    1845 Node: rmid Tool50202
    1846 Node: rmiregistry Tool51143
    1847 Node: tnameserv Tool51983
    1848 Node: I18N Issues52473
    1849 Node: Language Resources52974
    1850 Node: Message Formats56637
    1851 
    1852 End Tag Table
  • libjava/classpath/doc/gappletviewer.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/gappletviewer.1 gcc-4.3.3/libjava/classpath/doc/gappletviewer.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GAPPLETVIEWER 1"
    135 .TH GAPPLETVIEWER 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 gappletviewer \- Load and runs an applet
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 appletviewer [\fI\s-1OPTION\s0\fR]... \fI\s-1URL\s0\fR...
    145 .PP
    146 appletviewer [\fI\s-1OPTION\s0\fR]... \fB\-code\fR \fI\s-1CODE\s0\fR
    147 .PP
    148 appletviewer [\fI\s-1OPTION\s0\fR]... \fB\-plugin\fR \fI\s-1INPUT\s0\fR,\fI\s-1OUTPUT\s0\fR
    149 .SH "DESCRIPTION"
    150 .IX Header "DESCRIPTION"
    151 The \fBappletviewer\fR tool loads and runs an applet.
    152 .PP
    153 Use the first form to test applets specified by tag.  The \s-1URL\s0 should
    154 resolve to an \s-1HTML\s0 document from which the \fBappletviewer\fR will
    155 extract applet tags.  The \s-1APPLET\s0, \s-1EMBED\s0 and \s-1OBJECT\s0 tags are supported.
    156 If a given document contains multiple applet tags, all the applets
    157 will be loaded, with each applet appearing in its own window.
    158 Likewise, when multiple URLs are specified, each applet tag instance
    159 is given its own window.  If a given document contains no recognized
    160 tags the \fBappletviewer\fR does nothing.
    161 .PP
    162 .Vb 1
    163 \&        appletviewer http://www.gnu.org/software/classpath/
    164 .Ve
    165 .PP
    166 Use the second form to test an applet in development.  This form
    167 allows applet tag attributes to be supplied on the command line.  Only
    168 one applet may be specified using the \fB\-code\fR option.  The
    169 \&\fB\-code\fR option overrides the \s-1URL\s0 form \*(-- any URLs specified will
    170 be ignored.
    171 .PP
    172 .Vb 1
    173 \&        appletviewer \-code Test.class \-param datafile,data.txt
    174 .Ve
    175 .PP
    176 \&\fBgcjwebplugin\fR uses the third form to communicate with the
    177 \&\fBappletviewer\fR through named pipes.
    178 .SH "OPTIONS"
    179 .IX Header "OPTIONS"
    180 \&\s-1URL\s0 \s-1OPTIONS\s0
    181 .IP "\fB\-debug\fR" 4
    182 .IX Item "-debug"
    183 This option is not yet implemented but is provided for compatibility.
    184 .IP "\fB\-encoding\fR \fI\s-1CHARSET\s0\fR" 4
    185 .IX Item "-encoding CHARSET"
    186 Use this option to specify an alternate character encoding for the
    187 specified \s-1HTML\s0 page.
    188 .PP
    189 \&\s-1APPLET\s0 \s-1TAG\s0 \s-1OPTIONS\s0
    190 .IP "\fB\-code\fR \fI\s-1CODE\s0\fR" 4
    191 .IX Item "-code CODE"
    192 Use the \fB\-code\fR option to specify the value of the applet tag
    193 \&\fI\s-1CODE\s0\fR attribute.
    194 .IP "\fB\-codebase\fR \fI\s-1CODEBASE\s0\fR" 4
    195 .IX Item "-codebase CODEBASE"
    196 Use the \fB\-codebase\fR option to specify the value of the applet tag
    197 \&\fI\s-1CODEBASE\s0\fR attribute.
    198 .IP "\fB\-archive\fR \fI\s-1ARCHIVE\s0\fR" 4
    199 .IX Item "-archive ARCHIVE"
    200 Use the \fB\-archive\fR option to specify the value of the applet tag
    201 \&\fI\s-1ARCHIVE\s0\fR attribute.
    202 .IP "\fB\-width\fR \fI\s-1WIDTH\s0\fR" 4
    203 .IX Item "-width WIDTH"
    204 Use the \fB\-width\fR option to specify the value of the applet tag
    205 \&\fI\s-1WIDTH\s0\fR attribute.
    206 .IP "\fB\-height\fR \fI\s-1HEIGHT\s0\fR" 4
    207 .IX Item "-height HEIGHT"
    208 Use the \fB\-height\fR option to specify the value of the applet tag
    209 \&\fI\s-1HEIGHT\s0\fR attribute.
    210 .IP "\fB\-param\fR \fI\s-1NAME\s0\fR\fB,\fR\fI\s-1VALUE\s0\fR" 4
    211 .IX Item "-param NAME,VALUE"
    212 Use the \fB\-param\fR option to specify values for the \fI\s-1NAME\s0\fR
    213 and \fI\s-1VALUE\s0\fR attributes of an applet \s-1PARAM\s0 tag.
    214 .PP
    215 \&\s-1PLUGIN\s0 \s-1OPTION\s0
    216 .IP "\fB\-plugin\fR \fI\s-1INPUT\s0\fR\fB,\fR\fI\s-1OUTPUT\s0\fR" 4
    217 .IX Item "-plugin INPUT,OUTPUT"
    218 \&\fBgcjwebplugin\fR uses the \fB\-plugin\fR option to specify the
    219 named pipe the \fBappletviewer\fR should use for receiving commands
    220 (\fI\s-1INPUT\s0\fR) and the one it should use for sending commands to
    221 \&\fBgcjwebplugin\fR (\fI\s-1OUTPUT\s0\fR).
    222 .PP
    223 \&\s-1DEBUGGING\s0 \s-1OPTION\s0
    224 .IP "\fB\-verbose\fR" 4
    225 .IX Item "-verbose"
    226 Use the \fB\-verbose\fR option to have the \fBappletviewer\fR print
    227 debugging messages.
    228 .PP
    229 \&\s-1STANDARD\s0 \s-1OPTIONS\s0
    230 .IP "\fB\-help\fR" 4
    231 .IX Item "-help"
    232 Use the \fB\-help\fR option to have the \fBappletviewer\fR print a
    233 usage message, then exit.
    234 .IP "\fB\-version\fR" 4
    235 .IX Item "-version"
    236 Use the \fB\-version\fR option to have the \fBappletviewer\fR print
    237 its version, then exit.
    238 .IP "\fB\-J\fR\fI\s-1OPTION\s0\fR" 4
    239 .IX Item "-JOPTION"
    240 Use the \fB\-J\fR option to pass \fI\s-1OPTION\s0\fR to the virtual machine that
    241 will run the \fBappletviewer\fR.  Unlike other options, there must
    242 not be a space between the \fB\-J\fR and \fI\s-1OPTION\s0\fR.
    243 .SH "SEE ALSO"
    244 .IX Header "SEE ALSO"
  • libjava/classpath/doc/gjar.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/gjar.1 gcc-4.3.3/libjava/classpath/doc/gjar.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GJAR 1"
    135 .TH GJAR 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 gjar \- \- Archive tool for Java archives
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 gjar \fB\-ctxui\fR [\fI\s-1OPTIONS\s0\fR] \fIjar-file\fR [\fB\-C\fR \fI\s-1DIR\s0\fR \fI\s-1FILE\s0\fR] \fI\s-1FILE\s0\fR...
    145 .SH "DESCRIPTION"
    146 .IX Header "DESCRIPTION"
    147 \&\fBgjar\fR is an implementation of Sun's jar utility that comes with
    148 the \s-1JDK\s0.
    149 .PP
    150 If any file is a directory then it is processed recursively.  The
    151 manifest file name and the archive file name needs to be specified in
    152 the same order the \fB\-m\fR and \fB\-f\fR flags are specified.
    153 .SH "OPTIONS"
    154 .IX Header "OPTIONS"
    155 Operation mode:
    156 .IP "\fB\-c\fR" 4
    157 .IX Item "-c"
    158 Create new archive.
    159 .IP "\fB\-t\fR" 4
    160 .IX Item "-t"
    161 List table of contents for archive.
    162 .IP "\fB\-x\fR" 4
    163 .IX Item "-x"
    164 Extract named (or all) files from archive.
    165 .IP "\fB\-u\fR" 4
    166 .IX Item "-u"
    167 Update existing archive.
    168 .IP "\fB\-i\fR \fI\s-1FILE\s0\fR" 4
    169 .IX Item "-i FILE"
    170 Compute archive index.
    171 .PP
    172 Operation modifiers:
    173 .IP "\fB\-f\fR \fI\s-1FILE\s0\fR" 4
    174 .IX Item "-f FILE"
    175 Specify archive file name.
    176 .IP "\fB\-0\fR" 4
    177 .IX Item "-0"
    178 Store only; use no \s-1ZIP\s0 compression.
    179 .IP "\fB\-v\fR" 4
    180 .IX Item "-v"
    181 Generate verbose output on standard output.
    182 .IP "\fB\-M\fR" 4
    183 .IX Item "-M"
    184 Do not create a manifest file for the entries.
    185 .IP "\fB\-m\fR \fImanifest\fR" 4
    186 .IX Item "-m manifest"
    187 Include manifest information from specified \fImanifest\fR file.
    188 .PP
    189 File name selection:
    190 .IP "\fB\-C\fR \fI\s-1DIR\s0\fR\fB \fR\fI\s-1FILE\s0\fR" 4
    191 .IX Item "-C DIR FILE"
    192 Change to the \fI\s-1DIR\s0\fR and include the following \fI\s-1FILE\s0\fR.
    193 .IP "\fB\-@\fR" 4
    194 .IX Item "-@"
    195 Read the names of the files to add to the archive from stdin.  This
    196 option is supported only in combination with \fB\-c\fR or \fB\-u\fR.
    197 Non standard option added in the \s-1GCC\s0 version.
    198 .PP
    199 Standard options:
    200 .IP "\fB\-help\fR" 4
    201 .IX Item "-help"
    202 Print help text, then exit.
    203 .IP "\fB\-version\fR" 4
    204 .IX Item "-version"
    205 Print version number, then exit.
    206 .IP "\fB\-J\fR\fI\s-1OPTION\s0\fR" 4
    207 .IX Item "-JOPTION"
    208 Pass argument to the Java runtime.
    209 .SH "SEE ALSO"
    210 .IX Header "SEE ALSO"
    211 \&\fIjava\fR\|(1), ...
  • libjava/classpath/doc/gjarsigner.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/gjarsigner.1 gcc-4.3.3/libjava/classpath/doc/gjarsigner.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GJARSIGNER 1"
    135 .TH GJARSIGNER 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 gjarsigner \- Java ARchive (JAR) file signing and verification tool
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 jarsigner [\fI\s-1OPTION\s0\fR]... \fI\s-1FILE\s0\fR \fI\s-1ALIAS\s0\fR
    145 .PP
    146 jarsigner \fB\-verify\fR [\fI\s-1OPTION\s0\fR]... \fI\s-1FILE\s0\fR
    147 .SH "DESCRIPTION"
    148 .IX Header "DESCRIPTION"
    149 When the first form is used, the tool signs the designated \s-1JAR\s0 file. The second form, on the other hand, is used to verify a previously signed \s-1JAR\s0 file.
    150 .PP
    151 \&\fI\s-1FILE\s0\fR is the .JAR file to process; i.e. to sign if the first syntax form is used, or to verify if the second syntax form is used instead.
    152 .PP
    153 \&\fI\s-1ALIAS\s0\fR must be a known \fIAlias\fR of a \fIKey Entry\fR in the designated \fIKey Store\fR. The private key material associated with this \fIAlias\fR is then used for signing the designated .JAR file.
    154 .SH "OPTIONS"
    155 .IX Header "OPTIONS"
    156 \fICommon options\fR
    157 .IX Subsection "Common options"
    158 .PP
    159 The following options may be used when the tool is used for either signing, or verifying, a .JAR file.
    160 .IP "\fB\-verbose\fR" 4
    161 .IX Item "-verbose"
    162 Use this option to force the tool to generate more verbose messages, during its processing.
    163 .IP "\fB\-internalsf\fR" 4
    164 .IX Item "-internalsf"
    165 When present, the tool will include \-\-which otherwise it does not\*(-- the \f(CW\*(C`.SF\*(C'\fR file in the \f(CW\*(C`.DSA\*(C'\fR generated file.
    166 .IP "\fB\-sectionsonly\fR" 4
    167 .IX Item "-sectionsonly"
    168 When present, the tool will include in the \f(CW\*(C`.SF\*(C'\fR generated file \-\-which otherwise it does not\*(-- a header containing a hash of the whole manifest file.  When that header is included, the tool can quickly check, during verification, if the hash (in the header) matches or not the manifest file.
    169 .IP "\fB\-provider \s-1PROVIDER_CLASS_NAME\s0\fR" 4
    170 .IX Item "-provider PROVIDER_CLASS_NAME"
    171 A fully qualified class name of a \fISecurity Provider\fR to add to the current list of \fISecurity Providers\fR already installed in the \s-1JVM\s0 in-use. If a provider class is specified with this option, and was successfully added to the runtime \-\-i.e. it was not already installed\*(-- then the tool will attempt to remove this \fISecurity Provider\fR before exiting.
    172 .IP "\fB\-help\fR" 4
    173 .IX Item "-help"
    174 Prints a help text similar to this one.
    175 .PP
    176 \fISigning options\fR
    177 .IX Subsection "Signing options"
    178 .PP
    179 The following options may be specified when using the tool for signing purposes.
    180 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    181 .IX Item "-keystore URL"
    182 Use this option to specify the location of the key store to use. The default value is a file \s-1URL\s0 referencing the file named \fI.keystore\fR located in the path returned by the call to \f(CW\*(C`java.lang.System#getProperty(String)\*(C'\fR using \f(CW\*(C`user.home\*(C'\fR as argument.
    183 .Sp
    184 If a \s-1URL\s0 was specified, but was found to be malformed \-\-e.g. missing protocol element\*(-- the tool will attempt to use the \s-1URL\s0 value as a file-name (with absolute or relative path-name) of a key store \-\-as if the protocol was \f(CW\*(C`file:\*(C'\fR.
    185 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    186 .IX Item "-storetype STORE_TYPE"
    187 Use this option to specify the type of the key store to use. The default value, if this option is omitted, is that of the property \f(CW\*(C`keystore.type\*(C'\fR in the security properties file, which is obtained by invoking the static method call \f(CW\*(C`getDefaultType()\*(C'\fR in \f(CW\*(C`java.security.KeyStore\*(C'\fR.
    188 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    189 .IX Item "-storepass PASSWORD"
    190 Use this option to specify the password which will be used to unlock the key store. If this option is missing, the User will be prompted to provide a password.
    191 .IP "\fB\-keypass\fR \fI\s-1PASSWORD\s0\fR" 4
    192 .IX Item "-keypass PASSWORD"
    193 Use this option to specify the password which the tool will use to unlock the \fIKey Entry\fR associated with the designated \fIAlias\fR.
    194 .Sp
    195 If this option is omitted, the tool will first attempt to unlock the \fIKey Entry\fR using the same password protecting the key store. If this fails, you will then be prompted to provide a password.
    196 .IP "\fB\-sigfile\fR \fI\s-1NAME\s0\fR" 4
    197 .IX Item "-sigfile NAME"
    198 Use this option to designate a literal that will be used to construct file names for both the \f(CW\*(C`.SF\*(C'\fR and \f(CW\*(C`.DSA\*(C'\fR signature files. These files  will be generated, by the tool, and placed in the \fIMETA-INF\fR directory of the signed \s-1JAR\s0.  Permissible characters for \fI\s-1NAME\s0\fR must be in the range \*(L"a\-zA\-Z0\-9_\-\*(R".  All characters will be converted to upper-case ones.
    199 .Sp
    200 If this option is missing, the first eight characters of the \fI\s-1ALIAS\s0\fR argument will be used. When this is the case, any character in \fI\s-1ALIAS\s0\fR that is outside the permissible range of characters will be replaced by an underscore.
    201 .IP "\fB\-signedjar\fR \fI\s-1FILE\s0\fR" 4
    202 .IX Item "-signedjar FILE"
    203 Use this option to specify the file name of the signed \s-1JAR\s0. If this option is omitted, then the signed \s-1JAR\s0 will be named the same as \fI\s-1FILE\s0\fR; i.e. the input \s-1JAR\s0 file will be replaced with the signed copy.
    204 .PP
    205 \fIVerification options\fR
    206 .IX Subsection "Verification options"
    207 .PP
    208 The following options may be specified when using the tool for verification purposes.
    209 .IP "\fB\-verify\fR" 4
    210 .IX Item "-verify"
    211 Use this option to indicate that the tool is to be used for verification purposes.
    212 .IP "\fB\-certs\fR" 4
    213 .IX Item "-certs"
    214 This option is used in conjunction with the \fB\-verbose\fR option. When present, along with the \fB\-verbose\fR option, the tool will print more detailed information about the certificates of the signer(s) being processed.
    215 .SH "SEE ALSO"
    216 .IX Header "SEE ALSO"
  • libjava/classpath/doc/gjavah.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/gjavah.1 gcc-4.3.3/libjava/classpath/doc/gjavah.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GJAVAH 1"
    135 .TH GJAVAH 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 gjavah \- \- generate header files from Java class files
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 gjavah ...
    145 .SH "DESCRIPTION"
    146 .IX Header "DESCRIPTION"
    147 The \fBgjavah\fR program is used to generate header files from class
    148 files.  It can generate both \s-1CNI\s0 and \s-1JNI\s0 header files, as well as stub
    149 implementation files which can be used as a basis for implementing the
    150 required native methods.
    151 .SH "OPTIONS"
    152 .IX Header "OPTIONS"
    153 .IP "\fB\-d\fR \fI\s-1DIR\s0\fR" 4
    154 .IX Item "-d DIR"
    155 Set output directory.
    156 .IP "\fB\-o\fR \fI\s-1FILE\s0\fR" 4
    157 .IX Item "-o FILE"
    158 Set output file (only one of \fB\-d\fR or \fB\-o\fR may be used).
    159 .IP "\fB\-cmdfile\fR \fI\s-1FILE\s0\fR" 4
    160 .IX Item "-cmdfile FILE"
    161 Read command file.
    162 .IP "\fB\-all\fR \fI\s-1DIR\s0\fR" 4
    163 .IX Item "-all DIR"
    164 Operate on all class files under directory \fI\s-1DIR\s0\fR.
    165 .IP "\fB\-stubs\fR" 4
    166 .IX Item "-stubs"
    167 Emit stub implementation.
    168 .IP "\fB\-jni\fR" 4
    169 .IX Item "-jni"
    170 Emit \s-1JNI\s0 stubs or header (default).
    171 .IP "\fB\-cni\fR" 4
    172 .IX Item "-cni"
    173 Emit \s-1CNI\s0 stubs or header (default \s-1JNI\s0).
    174 .IP "\fB\-verbose\fR" 4
    175 .IX Item "-verbose"
    176 Set verbose mode.
    177 .IP "\fB\-force\fR" 4
    178 .IX Item "-force"
    179 Output files should always be written.
    180 .PP
    181 Class path options:
    182 .IP "\fB\-classpath\fR \fI\s-1PATH\s0\fR" 4
    183 .IX Item "-classpath PATH"
    184 Set the class path.
    185 .IP "\fB\-I\fR\fI\s-1DIR\s0\fR" 4
    186 .IX Item "-IDIR"
    187 Add directory to class path.
    188 .IP "\fB\-bootclasspath\fR \fI\s-1PATH\s0\fR" 4
    189 .IX Item "-bootclasspath PATH"
    190 Set the boot class path.
    191 .IP "\fB\-extdirs\fR \fI\s-1PATH\s0\fR" 4
    192 .IX Item "-extdirs PATH"
    193 Set the extension directory path.
    194 .PP
    195 Standard options:
    196 .IP "\fB\-help\fR" 4
    197 .IX Item "-help"
    198 Print help text, then exit.
    199 .IP "\fB\-version\fR" 4
    200 .IX Item "-version"
    201 Print version number, then exit.
    202 .IP "\fB\-J\fR\fI\s-1OPTION\s0\fR" 4
    203 .IX Item "-JOPTION"
    204 Pass argument to the Java runtime.
    205 .SH "SEE ALSO"
    206 .IX Header "SEE ALSO"
    207 \&\fIjavac\fR\|(1), ...
  • libjava/classpath/doc/gkeytool.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/gkeytool.1 gcc-4.3.3/libjava/classpath/doc/gkeytool.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GKEYTOOL 1"
    135 .TH GKEYTOOL 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 gkeytool \- Manage private keys and public certificates
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 keytool [\fI\s-1COMMAND\s0\fR] ...
    145 .SH "DESCRIPTION"
    146 .IX Header "DESCRIPTION"
    147 Cryptographic credentials, in a Java environment, are usually stored in a \fIKey Store\fR. The Java \s-1SDK\s0 specifies a \fIKey Store\fR as a persistent container of two types of objects: \fIKey Entries\fR and \fITrusted Certificates\fR. The security tool \fBkeytool\fR is a Java-based application for managing those types of objects.
    148 .PP
    149 A \fIKey Entry\fR represents the private key part of a key-pair used in Public-Key Cryptography, and a signed X.509 certificate which authenticates the public key part for a known entity; i.e. the owner of the key-pair. The X.509 certificate itself contains the public key part of the key-pair.
    150 .PP
    151 A \fITrusted Certificate\fR is a signed X.509 certificate issued by a trusted entity. The \fITrust\fR in this context is relative to the User of the \fBkeytool\fR. In other words, the existence of a \fITrusted Certificate\fR in the \fIKey Store\fR processed by a \fBkeytool\fR command implies that the User trusts the \fIIssuer\fR of that \fITrusted Certificate\fR to also sign, and hence authenticates, other \fISubjects\fR the tool may process.
    152 .PP
    153 \&\fITrusted Certificates\fR are important because they allow the tool to mechanically construct \fIChains of Trust\fR starting from one of the \fITrusted Certificates\fR in a \fIKey Store\fR and ending with a certificate whose \fIIssuer\fR is potentially unknown. A valid chain is an ordered list, starting with a \fITrusted Certificate\fR (also called the \fIanchor\fR), ending with the target certificate, and satisfying the condition that the \fISubject\fR of certificate \f(CW\*(C`#i\*(C'\fR is the \fIIssuer\fR of certificate \f(CW\*(C`#i + 1\*(C'\fR.
    154 .PP
    155 The \fBkeytool\fR is invoked from the command line as follows:
    156 .PP
    157 .Vb 1
    158 \&        keytool [COMMAND] ...
    159 .Ve
    160 .PP
    161 Multiple \fI\s-1COMMAND\s0\fRs may be specified at once, each complete with its own options. \fBkeytool\fR will parse all the arguments, before processing, and executing, each \f(CW\*(C`COMMAND\*(C'\fR. If an exception occurs while executing one \fI\s-1COMMAND\s0\fR \fBkeytool\fR will abort. Note however that because the implementation of the tool uses code to parse command line options that also supports GNU-style options, you have to separate each command group with a double-hyphen; e.g
    162 .PP
    163 .Vb 1
    164 \&        keytool \-list \-\- \-printcert \-alias mykey
    165 .Ve
    166 .SH "OPTIONS"
    167 .IX Header "OPTIONS"
    168 .IP "\- Add/Update commands" 4
    169 .IX Item "- Add/Update commands"
    170 .RS 4
    171 .PD 0
    172 .IP "\fB\-genkey [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    173 .IX Item "-genkey [OPTION]..."
    174 .PD
    175 Generate a new \fIKey Entry\fR, eventually creating a new key store.
    176 .IP "\fB\-import [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    177 .IX Item "-import [OPTION]..."
    178 Add, to a key store, \fIKey Entries\fR (private keys and certificate chains authenticating the public keys) and \fITrusted Certificates\fR (3rd party certificates which can be used as \fITrust Anchors\fR when building chains-of-trust).
    179 .IP "\fB\-selfcert [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    180 .IX Item "-selfcert [OPTION]..."
    181 Generate a new self-signed \fITrusted Certificate\fR.
    182 .IP "\fB\-cacert [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    183 .IX Item "-cacert [OPTION]..."
    184 Import a \s-1CA\s0 \fITrusted Certificate\fR.
    185 .IP "\fB\-identitydb [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    186 .IX Item "-identitydb [OPTION]..."
    187 \&\fB\s-1NOT\s0 \s-1IMPLEMENTED\s0 \s-1YET\s0\fR.Import a \s-1JDK\s0 1.1 style Identity Database.
    188 .RE
    189 .RS 4
    190 .RE
    191 .IP "\- Export commands" 4
    192 .IX Item "- Export commands"
    193 .RS 4
    194 .PD 0
    195 .IP "\fB\-certreq [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    196 .IX Item "-certreq [OPTION]..."
    197 .PD
    198 Issue a \fICertificate Signing Request\fR (\s-1CSR\s0) which can be then sent to a \fICertification Authority\fR (\s-1CA\s0) to issue a certificate signed (by the \s-1CA\s0) and authenticating the \fISubject\fR of the request.
    199 .IP "\fB\-export [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    200 .IX Item "-export [OPTION]..."
    201 Export a certificate from a key store.
    202 .RE
    203 .RS 4
    204 .RE
    205 .IP "\- Display commands" 4
    206 .IX Item "- Display commands"
    207 .RS 4
    208 .PD 0
    209 .IP "\fB\-list [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    210 .IX Item "-list [OPTION]..."
    211 .PD
    212 Print one or all certificates in a key store to \f(CW\*(C`STDOUT\*(C'\fR.
    213 .IP "\fB\-printcert [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    214 .IX Item "-printcert [OPTION]..."
    215 Print a human-readable form of a certificate, in a designated file, to \f(CW\*(C`STDOUT\*(C'\fR.
    216 .RE
    217 .RS 4
    218 .RE
    219 .IP "\- Management commands" 4
    220 .IX Item "- Management commands"
    221 .RS 4
    222 .PD 0
    223 .IP "\fB\-keyclone [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    224 .IX Item "-keyclone [OPTION]..."
    225 .PD
    226 Clone a \fIKey Entry\fR in a key store.
    227 .IP "\fB\-storepasswd [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    228 .IX Item "-storepasswd [OPTION]..."
    229 Change the password protecting a key store.
    230 .IP "\fB\-keypasswd [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    231 .IX Item "-keypasswd [OPTION]..."
    232 Change the password protecting a \fIKey Entry\fR in a key store.
    233 .IP "\fB\-delete [\fR\fI\s-1OPTION\s0\fR\fB]...\fR" 4
    234 .IX Item "-delete [OPTION]..."
    235 Delete a \fIKey Entry\fR or a \fITrusted Certificate\fR from a key store.
    236 .RE
    237 .RS 4
    238 .RE
    239 .PP
    240 \fICommon options\fR
    241 .IX Subsection "Common options"
    242 .PP
    243 The following \fB\s-1OPTION\s0\fRs are used in more than one \fB\s-1COMMAND\s0\fR. They are described here to reduce redundancy.
    244 .IP "\fB\-alias\fR \fIAlias\fR" 4
    245 .IX Item "-alias Alias"
    246 Every entry, be it a \fIKey Entry\fR or a \fITrusted Certificate\fR, in a key store is uniquely identified by a user-defined \fIAlias\fR string. Use this option to specify the \fIAlias\fR to use when referring to an entry in the key store. Unless specified otherwise, a default value of \f(CW\*(C`mykey\*(C'\fR shall be used when this option is omitted from the command line.
    247 .IP "\fB\-keyalg\fR \fI\s-1ALGORITHM\s0\fR" 4
    248 .IX Item "-keyalg ALGORITHM"
    249 Use this option to specify the canonical name of the key-pair generation algorithm. The default value for this option is \f(CW\*(C`DSS\*(C'\fR (a synonym for the Digital Signature Algorithm also known as \s-1DSA\s0).
    250 .IP "\fB\-keysize\fR \fI\s-1SIZE\s0\fR" 4
    251 .IX Item "-keysize SIZE"
    252 Use this option to specify the number of bits of the shared modulus (for both the public and private keys) to use when generating new keys. A default value of \f(CW1024\fR will be used if this option is omitted from the command line.
    253 .IP "\fB\-validity\fR \fI\s-1DAY_COUNT\s0\fR" 4
    254 .IX Item "-validity DAY_COUNT"
    255 Use this option to specify the number of days a newly generated certificate will be valid for. The default value is \f(CW90\fR (days) if this option is omitted from the command line.
    256 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    257 .IX Item "-storetype STORE_TYPE"
    258 Use this option to specify the type of the key store to use. The default value, if this option is omitted, is that of the property \f(CW\*(C`keystore.type\*(C'\fR in the security properties file, which is obtained by invoking the static method call \f(CW\*(C`getDefaultType()\*(C'\fR in \f(CW\*(C`java.security.KeyStore\*(C'\fR.
    259 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    260 .IX Item "-storepass PASSWORD"
    261 Use this option to specify the password protecting the key store. If this option is omitted from the command line, you will be prompted to provide a password.
    262 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    263 .IX Item "-keystore URL"
    264 Use this option to specify the location of the key store to use. The default value is a file \s-1URL\s0 referencing the file named \fI.keystore\fR located in the path returned by the call to \f(CW\*(C`java.lang.System#getProperty(String)\*(C'\fR using \f(CW\*(C`user.home\*(C'\fR as argument.
    265 .Sp
    266 If a \s-1URL\s0 was specified, but was found to be malformed \-\-e.g. missing protocol element\*(-- the tool will attempt to use the \s-1URL\s0 value as a file-name (with absolute or relative path-name) of a key store \-\-as if the protocol was \f(CW\*(C`file:\*(C'\fR.
    267 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    268 .IX Item "-provider PROVIDER_CLASS_NAME"
    269 A fully qualified class name of a \fISecurity Provider\fR to add to the current list of \fISecurity Providers\fR already installed in the \s-1JVM\s0 in-use. If a provider class is specified with this option, and was successfully added to the runtime \-\-i.e. it was not already installed\*(-- then the tool will attempt to removed this \fISecurity Provider\fR before exiting.
    270 .IP "\fB\-file\fR \fI\s-1FILE\s0\fR" 4
    271 .IX Item "-file FILE"
    272 Use this option to designate a file to use with a command. When specified with this option, the value is expected to be the fully qualified path of a file accessible by the File System. Depending on the command, the file may be used as input or as output. When this option is omitted from the command line, \f(CW\*(C`STDIN\*(C'\fR will be used instead, as the source of input, and \f(CW\*(C`STDOUT\*(C'\fR will be used instead as the output destination.
    273 .IP "\fB\-v\fR" 4
    274 .IX Item "-v"
    275 Unless specified otherwise, use this option to enable more verbose output.
    276 .PP
    277 \fIAdd/Update commands\fR
    278 .IX Subsection "Add/Update commands"
    279 .PP
    280 The \fB\-genkey\fR command
    281 .IX Subsection "The -genkey command"
    282 .PP
    283 Use this command to generate a new key-pair (both private and public keys), and save these credentials in the key store as a \fIKey Entry\fR, associated with the designated (if was specified with the \fB\-alias\fR option) or default (if the \fB\-alias\fR option is omitted) \fIAlias\fR.
    284 .PP
    285 The private key material will be protected with a user-defined password (see \fB\-keypass\fR option). The public key on the other hand will be part of a self-signed X.509 certificate, which will form a 1\-element chain and will be saved in the key store.
    286 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    287 .IX Item "-alias ALIAS"
    288 See \fICommon Options\fR for more details.
    289 .IP "\fB\-keyalg\fR \fI\s-1ALGORITHM\s0\fR" 4
    290 .IX Item "-keyalg ALGORITHM"
    291 See \fICommon Options\fR for more details.
    292 .IP "\fB\-keysize\fR \fI\s-1KEY_SIZE\s0\fR" 4
    293 .IX Item "-keysize KEY_SIZE"
    294 See \fICommon Options\fR for more details.
    295 .IP "\fB\-sigalg\fR \fI\s-1ALGORITHM\s0\fR" 4
    296 .IX Item "-sigalg ALGORITHM"
    297 The canonical name of the digital signature algorithm to use for signing certificates. If this option is omitted, a default value will be chosen based on the type of the key-pair; i.e. the algorithm that ends up being used by the \-keyalg option. If the key-pair generation algorithm is \f(CW\*(C`DSA\*(C'\fR, the value for the signature algorithm will be \f(CW\*(C`SHA1withDSA\*(C'\fR. If on the other hand the key-pair generation algorithm is \f(CW\*(C`RSA\*(C'\fR, then the tool will use \f(CW\*(C`MD5withRSA\*(C'\fR as the signature algorithm.
    298 .IP "\fB\-dname\fR \fI\s-1NAME\s0\fR" 4
    299 .IX Item "-dname NAME"
    300 This a mandatory value for the command. If no value is specified \-\-i.e. the \fB\-dname\fR option is omitted\*(-- the tool will prompt you to enter a \fIDistinguished Name\fR to use as both the \fIOwner\fR and \fIIssuer\fR of the generated self-signed certificate.
    301 .Sp
    302 See \fICommon Options\fR for more details.
    303 .IP "\fB\-keypass\fR \fI\s-1PASSWORD\s0\fR" 4
    304 .IX Item "-keypass PASSWORD"
    305 Use this option to specify the password which the tool will use to protect the newly created \fIKey Entry\fR.
    306 .Sp
    307 If this option is omitted, you will be prompted to provide a password.
    308 .IP "\fB\-validity\fR \fI\s-1DAY_COUNT\s0\fR" 4
    309 .IX Item "-validity DAY_COUNT"
    310 See \fICommon Options\fR for more details.
    311 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    312 .IX Item "-storetype STORE_TYPE"
    313 See \fICommon Options\fR for more details.
    314 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    315 .IX Item "-keystore URL"
    316 See \fICommon Options\fR for more details.
    317 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    318 .IX Item "-storepass PASSWORD"
    319 See \fICommon Options\fR for more details.
    320 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    321 .IX Item "-provider PROVIDER_CLASS_NAME"
    322 See \fICommon Options\fR for more details.
    323 .IP "\fB\-v\fR" 4
    324 .IX Item "-v"
    325 See \fICommon Options\fR for more details.
    326 .PP
    327 The \fB\-import\fR command
    328 .IX Subsection "The -import command"
    329 .PP
    330 Use this command to read an X.509 certificate, or a PKCS#7 \fICertificate Reply\fR from a designated input source and incorporate the certificates into the key store.
    331 .PP
    332 If the \fIAlias\fR does not already exist in the key store, the tool treats the certificate read from the input source as a new \fITrusted Certificate\fR. It then attempts to discover a chain-of-trust, starting from that certificate and ending at another \fITrusted Certificate\fR, already stored in the key store. If the \fB\-trustcacerts\fR option is present, an additional key store, of type \f(CW\*(C`JKS\*(C'\fR named \fIcacerts\fR, and assumed to be present in \fI${\s-1JAVA_HOME\s0}/lib/security\fR will also be consulted if found \-\-\f(CW\*(C`${JAVA_HOME}\*(C'\fR refers to the location of an installed \fIJava Runtime Environment\fR (\s-1JRE\s0). If no chain-of-trust can be established, and unless the \f(CW\*(C`\-noprompt\*(C'\fR option has been specified, the certificate is printed to \f(CW\*(C`STDOUT\*(C'\fR and the user is prompted for a confirmation.
    333 .PP
    334 If \fIAlias\fR exists in the key store, the tool will treat the certificate(s) read from the input source as a \fICertificate Reply\fR, which can be a chain of certificates, that eventually would replace the chain of certificates associated with the \fIKey Entry\fR of that \fIAlias\fR. The substitution of the certificates only occurs if a chain-of-trust can be established between the bottom certificate of the chain read from the input file and the \fITrusted Certificates\fR already present in the key store. Again, if the \fB\-trustcacerts\fR option is specified, additional \fITrusted Certificates\fR in the same \fIcacerts\fR key store will be considered. If no chain-of-trust can be established, the operation will abort.
    335 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    336 .IX Item "-alias ALIAS"
    337 See \fICommon Options\fR for more details.
    338 .IP "\fB\-file\fR \fI\s-1FILE\s0\fR" 4
    339 .IX Item "-file FILE"
    340 See \fICommon Options\fR for more details.
    341 .IP "\fB\-keypass\fR \fI\s-1PASSWORD\s0\fR" 4
    342 .IX Item "-keypass PASSWORD"
    343 Use this option to specify the password which the tool will use to protect the \fIKey Entry\fR associated with the designated \fIAlias\fR, when replacing this \fIAlias\fR' chain of certificates with that found in the certificate reply.
    344 .Sp
    345 If this option is omitted, and the chain-of-trust for the certificate reply has been established, the tool will first attempt to unlock the \fIKey Entry\fR using the same password protecting the key store. If this fails, you will then be prompted to provide a password.
    346 .IP "\fB\-noprompt\fR" 4
    347 .IX Item "-noprompt"
    348 Use this option to prevent the tool from prompting the user.
    349 .IP "\fB\-trustcacerts\fR" 4
    350 .IX Item "-trustcacerts"
    351 Use this option to indicate to the tool that a key store, of type \f(CW\*(C`JKS\*(C'\fR, named \fIcacerts\fR, and usually located in \fIlib/security\fR in an installed \fIJava Runtime Environment\fR should be considered when trying to establish chain-of-trusts.
    352 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    353 .IX Item "-storetype STORE_TYPE"
    354 See \fICommon Options\fR for more details.
    355 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    356 .IX Item "-keystore URL"
    357 See \fICommon Options\fR for more details.
    358 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    359 .IX Item "-storepass PASSWORD"
    360 See \fICommon Options\fR for more details.
    361 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    362 .IX Item "-provider PROVIDER_CLASS_NAME"
    363 See \fICommon Options\fR for more details.
    364 .IP "\fB\-v\fR" 4
    365 .IX Item "-v"
    366 See \fICommon Options\fR for more details.
    367 .PP
    368 The \fB\-selfcert\fR command
    369 .IX Subsection "The -selfcert command"
    370 .PP
    371 Use this command to generate a self-signed X.509 version 1 certificate. The newly generated certificate will form a chain of one element which will replace the previous chain associated with the designated \fIAlias\fR (if \fB\-alias\fR option was specified), or the default \fIAlias\fR (if \fB\-alias\fR option was omitted).
    372 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    373 .IX Item "-alias ALIAS"
    374 See \fICommon Options\fR for more details.
    375 .IP "\fB\-sigalg\fR \fI\s-1ALGORITHM\s0\fR" 4
    376 .IX Item "-sigalg ALGORITHM"
    377 The canonical name of the digital signature algorithm to use for signing the certificate. If this option is omitted, a default value will be chosen based on the type of the private key associated with the designated \fIAlias\fR. If the private key is a \f(CW\*(C`DSA\*(C'\fR one, the value for the signature algorithm will be \f(CW\*(C`SHA1withDSA\*(C'\fR. If on the other hand the private key is an \f(CW\*(C`RSA\*(C'\fR one, then the tool will use \f(CW\*(C`MD5withRSA\*(C'\fR as the signature algorithm.
    378 .IP "\fB\-dname\fR \fI\s-1NAME\s0\fR" 4
    379 .IX Item "-dname NAME"
    380 Use this option to specify the \fIDistinguished Name\fR of the newly generated self-signed certificate. If this option is omitted, the existing \fIDistinguished Name\fR of the base certificate in the chain associated with the designated \fIAlias\fR will be used instead.
    381 .Sp
    382 See \fICommon Options\fR for more details.
    383 .IP "\fB\-validity\fR \fI\s-1DAY_COUNT\s0\fR" 4
    384 .IX Item "-validity DAY_COUNT"
    385 See \fICommon Options\fR for more details.
    386 .IP "\fB\-keypass\fR \fI\s-1PASSWORD\s0\fR" 4
    387 .IX Item "-keypass PASSWORD"
    388 Use this option to specify the password which the tool will use to unlock the \fIKey Entry\fR associated with the designated \fIAlias\fR.
    389 .Sp
    390 If this option is omitted, the tool will first attempt to unlock the \fIKey Entry\fR using the same password protecting the key store. If this fails, you will then be prompted to provide a password.
    391 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    392 .IX Item "-storetype STORE_TYPE"
    393 See \fICommon Options\fR for more details.
    394 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    395 .IX Item "-keystore URL"
    396 See \fICommon Options\fR for more details.
    397 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    398 .IX Item "-storepass PASSWORD"
    399 See \fICommon Options\fR for more details.
    400 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    401 .IX Item "-provider PROVIDER_CLASS_NAME"
    402 See \fICommon Options\fR for more details.
    403 .IP "\fB\-v\fR" 4
    404 .IX Item "-v"
    405 See \fICommon Options\fR for more details.
    406 .PP
    407 The \fB\-cacert\fR command
    408 .IX Subsection "The -cacert command"
    409 .PP
    410 Use this command to import, a \s-1CA\s0 certificate and add it to the key store as a \fITrusted Certificate\fR. The \fIAlias\fR for this new entry will be constructed from the \s-1FILE\s0's base-name after replacing hyphens and dots with underscores.
    411 .PP
    412 This command is useful when used in a script that recursively visits a directory of \s-1CA\s0 certificates to populate a \f(CW\*(C`cacerts.gkr\*(C'\fR \fIKey Store\fR of trusted certificates which can then be used commands that specify the \fB\-trustcacerts\fR option.
    413 .IP "\fB\-file\fR \fI\s-1FILE\s0\fR" 4
    414 .IX Item "-file FILE"
    415 See \fICommon Options\fR for more details.
    416 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    417 .IX Item "-storetype STORE_TYPE"
    418 See \fICommon Options\fR for more details.
    419 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    420 .IX Item "-keystore URL"
    421 See \fICommon Options\fR for more details.
    422 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    423 .IX Item "-storepass PASSWORD"
    424 See \fICommon Options\fR for more details.
    425 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    426 .IX Item "-provider PROVIDER_CLASS_NAME"
    427 See \fICommon Options\fR for more details.
    428 .IP "\fB\-v\fR" 4
    429 .IX Item "-v"
    430 See \fICommon Options\fR for more details.
    431 .PP
    432 The \fB\-identitydb\fR command
    433 .IX Subsection "The -identitydb command"
    434 .PP
    435 \&\fB\s-1NOT\s0 \s-1IMPLEMENTED\s0 \s-1YET\s0\fR.
    436 .PP
    437 Use this command to import a \s-1JDK\s0 1.1 style Identity Database.
    438 .IP "\fB\-file\fR \fI\s-1FILE\s0\fR" 4
    439 .IX Item "-file FILE"
    440 See \fICommon Options\fR for more details.
    441 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    442 .IX Item "-storetype STORE_TYPE"
    443 See \fICommon Options\fR for more details.
    444 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    445 .IX Item "-keystore URL"
    446 See \fICommon Options\fR for more details.
    447 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    448 .IX Item "-storepass PASSWORD"
    449 See \fICommon Options\fR for more details.
    450 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    451 .IX Item "-provider PROVIDER_CLASS_NAME"
    452 See \fICommon Options\fR for more details.
    453 .IP "\fB\-v\fR" 4
    454 .IX Item "-v"
    455 See \fICommon Options\fR for more details.
    456 .PP
    457 \fIExport commands\fR
    458 .IX Subsection "Export commands"
    459 .PP
    460 The \fB\-certreq\fR command
    461 .IX Subsection "The -certreq command"
    462 .PP
    463 Use this command to generate a PKCS#10 \fICertificate Signing Request\fR (\s-1CSR\s0) and write it to a designated output destination. The contents of the destination should look something like the following:
    464 .PP
    465 .Vb 6
    466 \&        \-\-\-\-\-BEGIN NEW CERTIFICATE REQUEST\-\-\-\-\-
    467 \&        MI...QAwXzEUMBIGA1UEAwwLcnNuQGdudS5vcmcxGzAZBgNVBAoMElUg
    468 \&        Q2...A0GA1UEBwwGU3lkbmV5MQwwCgYDVQQIDANOU1cxCzAJBgNVBACC
    469 \&        ...
    470 \&        FC...IVwNVOfQLRX+O5kAhQ/a4RTZme2L8PnpvgRwrf7Eg8D6w==
    471 \&        \-\-\-\-\-END NEW CERTIFICATE REQUEST\-\-\-\-\-
    472 .Ve
    473 .PP
    474 \&\fB\s-1IMPORTANT\s0\fR: Some documentation (e.g. \s-1RSA\s0 examples) claims that the \f(CW\*(C`Attributes\*(C'\fR field, in the \s-1CSR\s0 is \f(CW\*(C`OPTIONAL\*(C'\fR while \s-1RFC\-2986\s0 implies the opposite. This implementation considers this field, by default, as \f(CW\*(C`OPTIONAL\*(C'\fR, unless the option \fB\-attributes\fR is specified on the command line.
    475 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    476 .IX Item "-alias ALIAS"
    477 See \fICommon Options\fR for more details.
    478 .IP "\fB\-sigalg\fR \fI\s-1ALGORITHM\s0\fR" 4
    479 .IX Item "-sigalg ALGORITHM"
    480 The canonical name of the digital signature algorithm to use for signing the certificate. If this option is omitted, a default value will be chosen based on the type of the private key associated with the designated \fIAlias\fR. If the private key is a \f(CW\*(C`DSA\*(C'\fR one, the value for the signature algorithm will be \f(CW\*(C`SHA1withDSA\*(C'\fR. If on the other hand the private key is an \f(CW\*(C`RSA\*(C'\fR one, then the tool will use \f(CW\*(C`MD5withRSA\*(C'\fR as the signature algorithm.
    481 .IP "\fB\-file\fR \fI\s-1FILE\s0\fR" 4
    482 .IX Item "-file FILE"
    483 See \fICommon Options\fR for more details.
    484 .IP "\fB\-keypass\fR \fI\s-1PASSWORD\s0\fR" 4
    485 .IX Item "-keypass PASSWORD"
    486 Use this option to specify the password which the tool will use to unlock the \fIKey Entry\fR associated with the designated \fIAlias\fR.
    487 .Sp
    488 If this option is omitted, the tool will first attempt to unlock the \fIKey Entry\fR using the same password protecting the key store. If this fails, you will then be prompted to provide a password.
    489 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    490 .IX Item "-storetype STORE_TYPE"
    491 See \fICommon Options\fR for more details.
    492 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    493 .IX Item "-keystore URL"
    494 See \fICommon Options\fR for more details.
    495 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    496 .IX Item "-storepass PASSWORD"
    497 See \fICommon Options\fR for more details.
    498 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    499 .IX Item "-provider PROVIDER_CLASS_NAME"
    500 See \fICommon Options\fR for more details.
    501 .IP "\fB\-v\fR" 4
    502 .IX Item "-v"
    503 See \fICommon Options\fR for more details.
    504 .IP "\fB\-attributes\fR" 4
    505 .IX Item "-attributes"
    506 Use this option to force the tool to encode a \f(CW\*(C`NULL\*(C'\fR \s-1DER\s0 value in the \s-1CSR\s0 as the value of the \f(CW\*(C`Attributes\*(C'\fR field.
    507 .PP
    508 The \fB\-export\fR command
    509 .IX Subsection "The -export command"
    510 .PP
    511 Use this command to export a certificate stored in a key store to a designated output destination, either in binary format (if the \fB\-v\fR option is specified), or in \s-1RFC\-1421\s0 compliant encoding (if the \fB\-rfc\fR option is specified instead).
    512 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    513 .IX Item "-alias ALIAS"
    514 See \fICommon Options\fR for more details.
    515 .IP "\fB\-file\fR \fI\s-1FILE\s0\fR" 4
    516 .IX Item "-file FILE"
    517 See \fICommon Options\fR for more details.
    518 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    519 .IX Item "-storetype STORE_TYPE"
    520 See \fICommon Options\fR for more details.
    521 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    522 .IX Item "-keystore URL"
    523 See \fICommon Options\fR for more details.
    524 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    525 .IX Item "-storepass PASSWORD"
    526 See \fICommon Options\fR for more details.
    527 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    528 .IX Item "-provider PROVIDER_CLASS_NAME"
    529 See \fICommon Options\fR for more details.
    530 .IP "\fB\-rfc\fR" 4
    531 .IX Item "-rfc"
    532 Use \s-1RFC\-1421\s0 specifications when encoding the output.
    533 .IP "\fB\-v\fR" 4
    534 .IX Item "-v"
    535 Output the certificate in binary \s-1DER\s0 encoding. This is the default output format of the command if neither \fB\-rfc\fR nor \f(CW\*(C`\-v\*(C'\fR options were detected on the command line. If both this option and the \fB\-rfc\fR option are detected on the command line, the tool will opt for the \s-1RFC\-1421\s0 style encoding.
    536 .PP
    537 \fIDisplay commands\fR
    538 .IX Subsection "Display commands"
    539 .PP
    540 The \fB\-list\fR command
    541 .IX Subsection "The -list command"
    542 .PP
    543 Use this command to print one or all of a key store entries to \f(CW\*(C`STDOUT\*(C'\fR. Usually this command will only print a \fIfingerprint\fR of the certificate, unless either the \fB\-rfc\fR or the \fB\-v\fR option is specified.
    544 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    545 .IX Item "-alias ALIAS"
    546 If this option is omitted, the tool will print \s-1ALL\s0 the entries found in the key store.
    547 .Sp
    548 See \fICommon Options\fR for more details.
    549 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    550 .IX Item "-storetype STORE_TYPE"
    551 See \fICommon Options\fR for more details.
    552 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    553 .IX Item "-keystore URL"
    554 See \fICommon Options\fR for more details.
    555 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    556 .IX Item "-storepass PASSWORD"
    557 See \fICommon Options\fR for more details.
    558 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    559 .IX Item "-provider PROVIDER_CLASS_NAME"
    560 See \fICommon Options\fR for more details.
    561 .IP "\fB\-rfc\fR" 4
    562 .IX Item "-rfc"
    563 Use \s-1RFC\-1421\s0 specifications when encoding the output.
    564 .IP "\fB\-v\fR" 4
    565 .IX Item "-v"
    566 Output the certificate in human-readable format. If both this option and the \fB\-rfc\fR option are detected on the command line, the tool will opt for the human-readable form and will not abort the command.
    567 .PP
    568 The \fB\-printcert\fR command
    569 .IX Subsection "The -printcert command"
    570 .PP
    571 Use this command to read a certificate from a designated input source and print it to \f(CW\*(C`STDOUT\*(C'\fR in a human-readable form.
    572 .IP "\fB\-file\fR \fI\s-1FILE\s0\fR" 4
    573 .IX Item "-file FILE"
    574 See \fICommon Options\fR for more details.
    575 .IP "\fB\-v\fR" 4
    576 .IX Item "-v"
    577 See \fICommon Options\fR for more details.
    578 .PP
    579 \fIManagement commands\fR
    580 .IX Subsection "Management commands"
    581 .PP
    582 The \fB\-keyclone\fR command
    583 .IX Subsection "The -keyclone command"
    584 .PP
    585 Use this command to clone an existing \fIKey Entry\fR and store it under a new (different) \fIAlias\fR protecting, its private key material with possibly a new password.
    586 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    587 .IX Item "-alias ALIAS"
    588 See \fICommon Options\fR for more details.
    589 .IP "\fB\-dest\fR \fI\s-1ALIAS\s0\fR" 4
    590 .IX Item "-dest ALIAS"
    591 Use this option to specify the new \fIAlias\fR which will be used to identify the cloned copy of the \fIKey Entry\fR.
    592 .IP "\fB\-keypass\fR \fI\s-1PASSWORD\s0\fR" 4
    593 .IX Item "-keypass PASSWORD"
    594 Use this option to specify the password which the tool will use to unlock the \fIKey Entry\fR associated with the designated \fIAlias\fR.
    595 .Sp
    596 If this option is omitted, the tool will first attempt to unlock the \fIKey Entry\fR using the same password protecting the key store. If this fails, you will then be prompted to provide a password.
    597 .IP "\fB\-new\fR \fI\s-1PASSWORD\s0\fR" 4
    598 .IX Item "-new PASSWORD"
    599 Use this option to specify the password protecting the private key material of the newly cloned copy of the \fIKey Entry\fR.
    600 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    601 .IX Item "-storetype STORE_TYPE"
    602 See \fICommon Options\fR for more details.
    603 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    604 .IX Item "-keystore URL"
    605 See \fICommon Options\fR for more details.
    606 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    607 .IX Item "-storepass PASSWORD"
    608 See \fICommon Options\fR for more details.
    609 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    610 .IX Item "-provider PROVIDER_CLASS_NAME"
    611 See \fICommon Options\fR for more details.
    612 .IP "\fB\-v\fR" 4
    613 .IX Item "-v"
    614 See \fICommon Options\fR for more details.
    615 .PP
    616 The \fB\-storepasswd\fR command
    617 .IX Subsection "The -storepasswd command"
    618 .PP
    619 Use this command to change the password protecting a key store.
    620 .IP "\fB\-new\fR \fI\s-1PASSWORD\s0\fR" 4
    621 .IX Item "-new PASSWORD"
    622 The new, and different, password which will be used to protect the designated key store.
    623 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    624 .IX Item "-storetype STORE_TYPE"
    625 See \fICommon Options\fR for more details.
    626 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    627 .IX Item "-keystore URL"
    628 See \fICommon Options\fR for more details.
    629 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    630 .IX Item "-storepass PASSWORD"
    631 See \fICommon Options\fR for more details.
    632 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    633 .IX Item "-provider PROVIDER_CLASS_NAME"
    634 See \fICommon Options\fR for more details.
    635 .IP "\fB\-v\fR" 4
    636 .IX Item "-v"
    637 See \fICommon Options\fR for more details.
    638 .PP
    639 The \fB\-keypasswd\fR command
    640 .IX Subsection "The -keypasswd command"
    641 .PP
    642 Use this command to change the password protecting the private key material of a designated \fIKey Entry\fR.
    643 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    644 .IX Item "-alias ALIAS"
    645 See \fICommon Options\fR for more details.
    646 .Sp
    647 Use this option to specify the password which the tool will use to unlock the \fIKey Entry\fR associated with the designated \fIAlias\fR.
    648 .Sp
    649 If this option is omitted, the tool will first attempt to unlock the \fIKey Entry\fR using the same password protecting the key store. If this fails, you will then be prompted to provide a password.
    650 .IP "\fB\-new\fR \fI\s-1PASSWORD\s0\fR" 4
    651 .IX Item "-new PASSWORD"
    652 The new, and different, password which will be used to protect the private key material of the designated \fIKey Entry\fR.
    653 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    654 .IX Item "-storetype STORE_TYPE"
    655 See \fICommon Options\fR for more details.
    656 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    657 .IX Item "-keystore URL"
    658 See \fICommon Options\fR for more details.
    659 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    660 .IX Item "-storepass PASSWORD"
    661 See \fICommon Options\fR for more details.
    662 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    663 .IX Item "-provider PROVIDER_CLASS_NAME"
    664 See \fICommon Options\fR for more details.
    665 .IP "\fB\-v\fR" 4
    666 .IX Item "-v"
    667 See \fICommon Options\fR for more details.
    668 .PP
    669 The \fB\-delete\fR command
    670 .IX Subsection "The -delete command"
    671 .PP
    672 Use this command to delete a designated key store entry.
    673 .IP "\fB\-alias\fR \fI\s-1ALIAS\s0\fR" 4
    674 .IX Item "-alias ALIAS"
    675 See \fICommon Options\fR for more details.
    676 .IP "\fB\-storetype\fR \fI\s-1STORE_TYPE\s0\fR" 4
    677 .IX Item "-storetype STORE_TYPE"
    678 See \fICommon Options\fR for more details.
    679 .IP "\fB\-keystore\fR \fI\s-1URL\s0\fR" 4
    680 .IX Item "-keystore URL"
    681 See \fICommon Options\fR for more details.
    682 .IP "\fB\-storepass\fR \fI\s-1PASSWORD\s0\fR" 4
    683 .IX Item "-storepass PASSWORD"
    684 See \fICommon Options\fR for more details.
    685 .IP "\fB\-provider\fR \fI\s-1PROVIDER_CLASS_NAME\s0\fR" 4
    686 .IX Item "-provider PROVIDER_CLASS_NAME"
    687 See \fICommon Options\fR for more details.
    688 .IP "\fB\-v\fR" 4
    689 .IX Item "-v"
    690 See \fICommon Options\fR for more details.
    691 .SH "SEE ALSO"
    692 .IX Header "SEE ALSO"
  • libjava/classpath/doc/gnative2ascii.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/gnative2ascii.1 gcc-4.3.3/libjava/classpath/doc/gnative2ascii.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GNATIVE2ASCII 1"
    135 .TH GNATIVE2ASCII 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 gnative2ascii \- \- An encoding converter
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 gnative2ascii [\fI\s-1OPTIONS\s0\fR]... [\fI\s-1INPUTFILE\s0\fR [\fI\s-1OUTPUTFILE\s0\fR]]
    145 .SH "DESCRIPTION"
    146 .IX Header "DESCRIPTION"
    147 To be written ...
    148 .SH "OPTIONS"
    149 .IX Header "OPTIONS"
    150 .IP "\fB\-encoding\fR \fI\s-1NAME\s0\fR" 4
    151 .IX Item "-encoding NAME"
    152 Set the encoding to use.
    153 .IP "\fB\-reversed\fR" 4
    154 .IX Item "-reversed"
    155 Convert from encoding to native.
    156 .PP
    157 Standard options:
    158 .IP "\fB\-help\fR" 4
    159 .IX Item "-help"
    160 Print help text, then exit.
    161 .IP "\fB\-version\fR" 4
    162 .IX Item "-version"
    163 Print version number, then exit.
    164 .IP "\fB\-J\fR\fI\s-1OPTION\s0\fR" 4
    165 .IX Item "-JOPTION"
    166 Pass argument to the Java runtime.
    167 .SH "SEE ALSO"
    168 .IX Header "SEE ALSO"
    169 \&\fIjavac\fR\|(1), ...
  • libjava/classpath/doc/gorbd.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/gorbd.1 gcc-4.3.3/libjava/classpath/doc/gorbd.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GORBD 1"
    135 .TH GORBD 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 gorbd \- \- An object request broker daemon
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 gorbd ...
    145 .SH "DESCRIPTION"
    146 .IX Header "DESCRIPTION"
    147 To be written ...
    148 .SH "OPTIONS"
    149 .IX Header "OPTIONS"
    150 .IP "\fB\-ORBInitialPort\fR \fI\s-1PORT\s0\fR" 4
    151 .IX Item "-ORBInitialPort PORT"
    152 Port on which persistent naming service is to be started.
    153 .IP "\fB\-ior\fR \fI\s-1FILE\s0\fR" 4
    154 .IX Item "-ior FILE"
    155 File in which to store persistent naming service's \s-1IOR\s0 reference
    156 .IP "\fB\-directory\fR \fI\s-1DIR\s0\fR" 4
    157 .IX Item "-directory DIR"
    158 Directory in which to store persistent data.
    159 .IP "\fB\-restart\fR" 4
    160 .IX Item "-restart"
    161 Restart persistent naming service, clearing persistent naming
    162 database.
    163 .PP
    164 Standard options:
    165 .IP "\fB\-help\fR" 4
    166 .IX Item "-help"
    167 Print help text, then exit.
    168 .IP "\fB\-version\fR" 4
    169 .IX Item "-version"
    170 Print version number, then exit.
    171 .IP "\fB\-J\fR\fI\s-1OPTION\s0\fR" 4
    172 .IX Item "-JOPTION"
    173 Pass argument to the Java runtime.
    174 .SH "SEE ALSO"
    175 .IX Header "SEE ALSO"
    176 \&\fIjava\fR\|(1), ...
  • libjava/classpath/doc/grmid.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/grmid.1 gcc-4.3.3/libjava/classpath/doc/grmid.1
    old new  
    1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
    2 .\"
    3 .\" Standard preamble:
    4 .\" ========================================================================
    5 .de Sh \" Subsection heading
    6 .br
    7 .if t .Sp
    8 .ne 5
    9 .PP
    10 \fB\\$1\fR
    11 .PP
    12 ..
    13 .de Sp \" Vertical space (when we can't use .PP)
    14 .if t .sp .5v
    15 .if n .sp
    16 ..
    17 .de Vb \" Begin verbatim text
    18 .ft CW
    19 .nf
    20 .ne \\$1
    21 ..
    22 .de Ve \" End verbatim text
    23 .ft R
    24 .fi
    25 ..
    26 .\" Set up some character translations and predefined strings.  \*(-- will
    27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
    28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
    29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
    30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
    31 .\" nothing in troff, for use with C<>.
    32 .tr \(*W-
    33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
    34 .ie n \{\
    35 .    ds -- \(*W-
    36 .    ds PI pi
    37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
    38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
    39 .    ds L" ""
    40 .    ds R" ""
    41 .    ds C` ""
    42 .    ds C' ""
    43 'br\}
    44 .el\{\
    45 .    ds -- \|\(em\|
    46 .    ds PI \(*p
    47 .    ds L" ``
    48 .    ds R" ''
    49 'br\}
    50 .\"
    51 .\" Escape single quotes in literal strings from groff's Unicode transform.
    52 .ie \n(.g .ds Aq \(aq
    53 .el       .ds Aq '
    54 .\"
    55 .\" If the F register is turned on, we'll generate index entries on stderr for
    56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
    57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
    58 .\" output yourself in some meaningful fashion.
    59 .ie \nF \{\
    60 .    de IX
    61 .    tm Index:\\$1\t\\n%\t"\\$2"
    62 ..
    63 .    nr % 0
    64 .    rr F
    65 .\}
    66 .el \{\
    67 .    de IX
    68 ..
    69 .\}
    70 .\"
    71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
    72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
    73 .    \" fudge factors for nroff and troff
    74 .if n \{\
    75 .    ds #H 0
    76 .    ds #V .8m
    77 .    ds #F .3m
    78 .    ds #[ \f1
    79 .    ds #] \fP
    80 .\}
    81 .if t \{\
    82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
    83 .    ds #V .6m
    84 .    ds #F 0
    85 .    ds #[ \&
    86 .    ds #] \&
    87 .\}
    88 .    \" simple accents for nroff and troff
    89 .if n \{\
    90 .    ds ' \&
    91 .    ds ` \&
    92 .    ds ^ \&
    93 .    ds , \&
    94 .    ds ~ ~
    95 .    ds /
    96 .\}
    97 .if t \{\
    98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
    99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
    100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
    101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
    102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
    103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
    104 .\}
    105 .    \" troff and (daisy-wheel) nroff accents
    106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
    107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
    108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
    109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
    110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
    111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
    112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
    113 .ds ae a\h'-(\w'a'u*4/10)'e
    114 .ds Ae A\h'-(\w'A'u*4/10)'E
    115 .    \" corrections for vroff
    116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
    117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
    118 .    \" for low resolution devices (crt and lpr)
    119 .if \n(.H>23 .if \n(.V>19 \
    120 \{\
    121 .    ds : e
    122 .    ds 8 ss
    123 .    ds o a
    124 .    ds d- d\h'-1'\(ga
    125 .    ds D- D\h'-1'\(hy
    126 .    ds th \o'bp'
    127 .    ds Th \o'LP'
    128 .    ds ae ae
    129 .    ds Ae AE
    130 .\}
    131 .rm #[ #] #H #V #F C
    132 .\" ========================================================================
    133 .\"
    134 .IX Title "GRMID 1"
    135 .TH GRMID 1 "2009-01-24" "0.96-pre" "GNU"
    136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
    137 .\" way too many mistakes in technical documents.
    138 .if n .ad l
    139 .nh
    140 .SH "NAME"
    141 grmid \- \- RMI activation system daemon
    142 .SH "SYNOPSIS"
    143 .IX Header "SYNOPSIS"
    144 grmid [\fI\s-1OPTIONS\s0\fR]...
    145 .SH "DESCRIPTION"
    146 .IX Header "DESCRIPTION"
    147 \&\fBrmiregistry\fR starts a remote object registry on the current
    148 host.  If no port number is specified, then port 1099 is used.
    149 .SH "OPTIONS"
    150 .IX Header "OPTIONS"
    151 Activation process control:
    152 .IP "\fB\-port\fR \fI\s-1PORT\s0\fR" 4
    153 .IX Item "-port PORT"
    154 Port on which activation system is to be started.
    155 .IP "\fB\-restart\fR" 4
    156 .IX Item "-restart"
    157 Restart activation system, clearing persistent naming database, if
    158 any.
    159 .IP "\fB\-stop\fR" 4
    160 .IX Item "-stop"
    161 Stop activation system.
    162 .PP
    163 Persistence:
    164 .IP "\fB\-persistent\fR" 4
    165 .IX Item "-persistent"
    166 Make activation system persistent.
    167 .IP "\fB\-directory\fR \fI\s-1DIR\s0\fR" 4
    168 .IX Item "-directory DIR"
    169 Directory in which to store persistent data.
    170 .PP
    171 Debugging:
    172 .IP "\fB\-verbose\fR" 4
    173 .IX Item "-verbose"
    174 Log binding events to standard out.
    175 .PP
    176 Standard options:
    177 .IP "\fB\-help\fR" 4
    178 .IX Item "-help"
    179 Print help text, then exit.
    180 .IP "\fB\-version\fR" 4
    181 .IX Item "-version"
    182 Print version number, then exit.
    183 .IP "\fB\-J\fR\fI\s-1OPTION\s0\fR" 4
    184 .IX Item "-JOPTION"
    185 Pass argument to the Java runtime.
    186 .SH "SEE ALSO"
    187 .IX Header "SEE ALSO"
    188 \&\fIjava\fR\|(1), ...
  • libjava/classpath/doc/grmiregistry.1

    diff -Naur gcc-4.3.3.orig/libjava/classpath/doc/grmiregistry.1 gcc-4.3.3/libjava/classpath/doc/grmiregistry.1