Prechádzať zdrojové kódy

Merged revisions 2108 via svnmerge from
svn+ssh://[email protected]/FPC/svn/fpc/trunk

r2108 (jonas)
* fixed web bug #4651 + test

git-svn-id: branches/fixes_2_0@2109 -

Jonas Maebe 20 rokov pred
rodič
commit
4bf7dfccea
3 zmenil súbory, kde vykonal 27 pridanie a 1 odobranie
  1. 1 0
      .gitattributes
  2. 3 1
      compiler/ncal.pas
  3. 23 0
      tests/webtbf/tw4651.pp

+ 1 - 0
.gitattributes

@@ -5631,6 +5631,7 @@ tests/webtbf/tw4256.pp svneol=native#text/plain
 tests/webtbf/tw4359.pp svneol=native#text/plain
 tests/webtbf/tw4445.pp svneol=native#text/plain
 tests/webtbf/tw4529.pp svneol=native#text/plain
+tests/webtbf/tw4651.pp svneol=native#text/plain
 tests/webtbf/uw0744.pp svneol=native#text/plain
 tests/webtbf/uw0840a.pp svneol=native#text/plain
 tests/webtbf/uw0840b.pp svneol=native#text/plain

+ 3 - 1
compiler/ncal.pas

@@ -1693,7 +1693,9 @@ type
                              not(cnf_inherited in callnodeflags) and
                              ((m_tp_procvar in aktmodeswitches) or
                               (m_mac_procvar in aktmodeswitches)) and
-                             (symtableprocentry.procdef_count=1) then
+                             (symtableprocentry.procdef_count=1) and
+                             (not assigned(methodpointer) or
+                              (methodpointer.nodetype <> typen)) then
                             begin
                               hpt:=cloadnode.create(tprocsym(symtableprocentry),symtableproc);
                               if assigned(methodpointer) then

+ 23 - 0
tests/webtbf/tw4651.pp

@@ -0,0 +1,23 @@
+{ %fail }
+
+{$mode delphi}
+program test;
+
+type
+  TFoo = class(TObject)
+    constructor Create(Foo: Pointer);
+  end;
+
+constructor TFoo.Create(Foo: Pointer);
+begin
+end;
+
+procedure shiny;
+var
+  p: pointer;
+  M: TFoo.Create;
+begin
+end;
+
+end.
+