PLD 11 Parsing problem with concatenated string literals

Problem occurs in PL/SQL Developer (Version 11.0.0.1762) running on Windows 7 (64-bit) 6.1 Build 7601 (Service Pack 1).

Test case:

SQL:
CREATE OR REPLACE PACKAGE test_string_literals as

  procedure test;

end test_string_literals;
/

CREATE OR REPLACE PACKAGE BODY test_string_literals as

  procedure test
  is
    dummy varchar2(200);
  begin
    dummy := q'#'foo#'||q'#'bar'#';
  end;

end test_string_literals;
/

With code presented above:
  1. In Command Window parsing error is visible in line 14th (wrong colors used).
  2. After running script and opening Program window with package body:
    • The same problem occurs in 7th line of body.
    • Code contents is not visible.
The problem is caused by apostrophes immediately preceding or succeeding quotation marks in conjunction with concatenation. It works as desired if quote delimiter would be some kind of parenthesis.

Lukasz

 
Back
Top