mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-23 22:49:35 +02:00
compiler: change find_module_from_symtable to support not only unit symtables but also other symtables with valid moduleid (fixes bug #0016090)
git-svn-id: trunk@16487 -
This commit is contained in:
parent
c9c1179b00
commit
ba75daa50d
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -10660,6 +10660,7 @@ tests/webtbs/tw16034.pp svneol=native#text/plain
|
||||
tests/webtbs/tw16040.pp svneol=native#text/plain
|
||||
tests/webtbs/tw16065.pp svneol=native#text/pascal
|
||||
tests/webtbs/tw16083.pp svneol=native#text/plain
|
||||
tests/webtbs/tw16090.pp svneol=native#text/pascal
|
||||
tests/webtbs/tw16100.pp svneol=native#text/pascal
|
||||
tests/webtbs/tw16108.pp svneol=native#text/plain
|
||||
tests/webtbs/tw16130.pp svneol=native#text/pascal
|
||||
|
@ -257,8 +257,7 @@ implementation
|
||||
hp:=tmodule(loaded_units.first);
|
||||
while assigned(hp) do
|
||||
begin
|
||||
if (hp.globalsymtable=st) or
|
||||
(hp.localsymtable=st) then
|
||||
if (hp.moduleid=st.moduleid) then
|
||||
begin
|
||||
result:=hp;
|
||||
exit;
|
||||
|
21
tests/webtbs/tw16090.pp
Normal file
21
tests/webtbs/tw16090.pp
Normal file
@ -0,0 +1,21 @@
|
||||
{ %norun }
|
||||
|
||||
program tw16090;
|
||||
|
||||
{$mode objfpc}{$H+}
|
||||
|
||||
type
|
||||
TClass1 = class
|
||||
public type
|
||||
generic TNestedClass<T> = class
|
||||
end;
|
||||
// Fatal: Internal error 200705152
|
||||
TSpecialization1 = specialize TNestedClass<Integer>;
|
||||
end;
|
||||
|
||||
// Fatal: Internal error 200705152
|
||||
TSpecialization1 = specialize TClass1.TNestedClass<Integer>;
|
||||
|
||||
begin
|
||||
end.
|
||||
|
Loading…
Reference in New Issue
Block a user