1-- RUN: %llvmgcc -S %s 2with System; 3procedure Negative_Field_Offset (N : Integer) is 4 type String_Pointer is access String; 5 -- Force use of a thin pointer. 6 for String_Pointer'Size use System.Word_Size; 7 P : String_Pointer; 8 9 procedure Q (P : String_Pointer) is 10 begin 11 P (1) := 'Z'; 12 end; 13begin 14 P := new String (1 .. N); 15 Q (P); 16end; 17