(Debian bug #280939) -- RM 10.1.5(4) "the pragma shall have an argument that is a name -- denoting that declaration." -- RM 8.1(16) "The children of a parent library unit are inside the -- parent's declarative region."
package pak1 is pragma Pure; end pak1; procedure pak1.p2; pragma Pure (p2); -- ERROR: need expanded name pragma Import (ada, p2); -- ERROR: need expanded name pragma Inline (p2); -- ERROR: need expanded name with Pak1.P2; procedure Test_130 is begin Pak1.P2; end Test_130; Expected output all three errors diagnosed: pak1-p2.ads:3:13: "p2" is not directly visible pak1-p2.ads:4:20: "p2" is not directly visible pak1-p2.ads:5:15: "p2" is not directly visible Actual output: the compiler says nothing, the linker, as expected, can't find pak1.p2: ./test_130.o(.text+0x4): In function `_ada_test_130': : undefined reference to `p2' gnatlink: cannot call /usr/bin/gnatgcc gnatmake: *** link failed. -- Summary: Illegal program not detected, RM 10.1.5(4), 8.1(16) 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=18454