comp.lang.ada
 help / color / mirror / Atom feed
From: "G.B." <bauhaus@notmyhomepage.invalid>
Subject: Safe to ignore warnings about function mistaken as primitive?
Date: Sun, 10 Jul 2022 10:45:24 +0200	[thread overview]
Message-ID: <tae3j4$1b95n$1@dont-email.me> (raw)

GNAT warns about primitive operations appearing too late in the text.
In the following example, though, F is not meant to be a primitive
operation of A.Some_Tagged, but instead one of type B.Plain.

Can I ignore the warning?


gcc -gnatl -c rt_warn.ads

GNAT 11.2.0
Copyright 1992-2021, Free Software Foundation, Inc.
cannot generate code for file rt_warn.ads (package spec)


Compiling: rt_warn.ads
Source file time stamp: 2022-07-10 08:34:32
Compiled at: 2022-07-10 10:34:39

      1. package Rt_Warn is
      2.
      3.     package A is
      4.
      5.         type Some_Tagged is interface;
      6.
      7.     end A;
      8.
      9.     package B is
     10.
     11.         type Plain is private;
     12.
     13.         function F (Param : A.Some_Tagged) return Plain;
                          |
         >>> warning: declaration of "F" is too late
         >>> warning: spec should appear immediately after declaration of "Some_Tagged"

     14.         function FC (Param : A.Some_Tagged'Class) return Plain;
     15.     private
     16.         type Plain is record
     17.             null;
     18.         end record;
     19.     end B;
     20.
     21. end Rt_Warn;

  21 lines: No errors, 2 warnings

             reply	other threads:[~2022-07-10  8:45 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-10  8:45 G.B. [this message]
2022-07-10 10:19 ` Safe to ignore warnings about function mistaken as primitive? Dmitry A. Kazakov
2022-07-11  4:27 ` Stephen Leake
2022-07-11 13:17   ` G.B.
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox