(Debian bug #283835)

package Test_133 is
   package pak1 is
      type T1 is null record;
   end pak1;

   package pak2 is
      subtype boolean is standard.boolean;
      function "=" (x, y: pak1.T1) return boolean;
   end pak2;

   use pak1, pak2;

   x1: pak1.T1;
   b1: boolean := x1 /= x1;     --ERROR: ambigous  (gnat misses)
   b2: boolean := x1 = x1;      --ERROR: ambigous
end Test_133;


The actual output from gnat is:

test_133.ads:15:22: ambiguous expression (cannot resolve ""="")
test_133.ads:15:22: possible interpretation at line 8
test_133.ads:15:22: possible interpretation in package Standard
gnatmake: "test_133.ads" compilation error

Only the second error is detected; the ambiguity of "/=" goes
unnoticed.

-- 
           Summary: Illegal program not detected, "/=" when "=" is ambiguous
           Product: gcc
           Version: 3.4.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: ada
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: ludovic dot brenta at insalien dot org
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18765

Reply via email to