This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug ada/18434] [4.0/4.1 Regression] Ada: cannot build gnattools on Tru64 UNIX V5.1B

------- Comment #22 from charlet at gcc dot gnu dot org  2005-11-15 13:51 -------
Subject: Bug 18434

Author: charlet
Date: Tue Nov 15 13:51:09 2005
New Revision: 106950

2005-11-14  Robert Dewar  <>
            Ed Schonberg  <>

        PR ada/18434

        * Include All_Checks in Suppress_Array

        * checks.adb (Check_Needed): Remove kludge for a/=b rewritten as
        not(a=b), since we no longer do this rewriting, and hence it is not
        (Elaboration_Checks_Suppressed): Add special casing to
        deal with different cases of static and dynamic elaboration checks (all
        checks does not count in the first case, but does in the second).
        (Expr_Known_Valid): Do not assume that the result of any arbitrary
        function call is valid, since this is not the case.
        (Ensure_Valid): Do not apply validity check to a real literal
        in a universal or fixed context

        * exp_ch4.adb (Expand_N_Op_Ne): Don't expand a/=b to not(a=b) for
        elementary types using the operator in standard. It is cleaner not to
        modify the programmers intent, especially in the case of
        (Rewrite_Comparison): Fix handling of /= (this was always wrong, but
        it did not matter because we always rewrote a/=b to not(a=b).
        (Expand_Allocator_Expression): For an allocator expression whose
        subtype is an unconstrained packed type, convert the expression to its
        actual constrained subtype.
        Implement warning for <= or >= where < or > not possible
        Fix to Vax_Float tests (too early in many routines, causing premature
        Vax_Float expansions.

        * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow this pragma
        to be used with packages and generic packages as well as with
        (Suppress): Set All_Checks, but not Elaboration_Check, for case
        of pragma Suppress (All_Checks)
        (Analyze_Pragma, case Warnings): Implement first argument allowed to be
        a string literal for precise control over warnings.
        Avoid raise of pragma in case of unrecognized pragma and just return

        * Minor reformatting

        * switch-c.adb (Scan_Front_End_Switches): Replace "raise Bad_Switch;"
        with call to new procedure Bad_Switch. Call Scan_Pos with new parameter
        Switch. Do not handle any exception.
        Include -gnatwx as part of -gnatg (warn on redundant parens)
        Allow optional = after -gnatm
        (Scan_Front_End_Switches): The -gnatp switch sets All_Checks, but no
        longer sets Elaboration_Checks.
        Code to set warning mode moved to Sem_Warn
        so that it can be shared by pragma processing.

        * s-mastop-tru64.adb (Pop_Frame): Remove redundant parentheses in if

        * s-taprop-solaris.adb: 
        Change some <= to =, to avoid new warning

        * a-exexda.adb, prj-proc.adb: 
        Fix obvious typo (Num_Tracebacks compared <= 0 instead of < 0)
        Fix obvious typo (Total_Errors_Detected <= 0 should be = 0)



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]