Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
compiler
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
17
Issues
17
List
Boards
Labels
Service Desk
Milestones
Operations
Operations
Incidents
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
clean-compiler-and-rts
compiler
Commits
ecc442f5
Commit
ecc442f5
authored
Oct 18, 2001
by
John van Groningen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
make source code clean 2.0 compatible
parent
f4cdeb55
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
14 additions
and
7 deletions
+14
-7
frontend/check.icl
frontend/check.icl
+9
-2
frontend/checksupport.icl
frontend/checksupport.icl
+5
-5
No files found.
frontend/check.icl
View file @
ecc442f5
...
...
@@ -1050,7 +1050,10 @@ create_icl_to_dcl_index_table MK_Main icl_sizes icl_global_function_range main_d
=
(
No
,
No
,
modules
,
fun_defs
)
create_icl_to_dcl_index_table
_
icl_sizes
icl_global_function_range
main_dcl_module_n
old_conversions
modules
fun_defs
#
(
size_icl_functions
,
fun_defs
)
=
usize
fun_defs
#
icl_sizes
=
{{
icl_sizes
.[
i
]
\\
i
<-[
0
..
cMacroDefs
-1
]}
&
[
cFunctionDefs
]=
size_icl_functions
}
#
icl_sizes
=
make_icl_sizes
with
make_icl_sizes
::
*{#
Int
}
make_icl_sizes
=>
{{
icl_sizes
.[
i
]
\\
i
<-[
0
..
cMacroDefs
-1
]}
&
[
cFunctionDefs
]=
size_icl_functions
}
#
(
dcl_mod
,
modules
)
=
modules
![
main_dcl_module_n
]
#
dictionary_info
=
dcl_mod
.
dcl_dictionary_info
#
(
Yes
conversion_table
)
=
old_conversions
...
...
@@ -1901,6 +1904,7 @@ check_module1 {mod_type,mod_name,mod_imports,mod_imported_objects,mod_defs = cde
->
({
pre_def_symbols
&
[
predef_index
]
=
{
mod_symb
&
pds_module
=
cs_x
.
x_main_dcl_module_n
,
pds_def
=
mod_entry
.
ste_index
}},
symbol_table
)
_
->
(
pre_def_symbols
,
symbol_table
)
add_modules_to_symbol_table
[
mod
:
mods
]
mod_index
cs
#
(
mod_sizes_and_defs
,
dcl_macro_defs
,
cs
)
=
add_module_to_symbol_table
mod
mod_index
cs
(
mods
,
macro_defs
,
cs
)
=
add_modules_to_symbol_table
mods
(
inc
mod_index
)
cs
...
...
@@ -2032,6 +2036,9 @@ check_module2 mod_name mod_modification_time mod_imported_objects mod_imports mo
heaps
=
{
heaps
&
hp_expression_heap
=
hp_expression_heap
}
icl_imported
=
{
el
\\
el
<-
dcls_import_list
}
icl_imported
=
{
el
\\
el
<-
dcls_import_list
}
(_,
icl_common
,
dcl_modules
,
hp_type_heaps
,
hp_var_heap
,
cs
)
...
...
@@ -2158,7 +2165,7 @@ check_module2 mod_name mod_modification_time mod_imported_objects mod_imports mo
=
(
first_free_index
,
modules
,
icl_functions
,
var_heap
,
type_var_heap
,
expr_heap
)
collect_specialized_functions_in_dcl_module
_
first_free_index
main_dcl_module_n
modules
icl_functions
var_heap
type_var_heap
expr_heap
#
(
dcl_mod
,
modules
)
=
modules
![
main_dcl_module_n
]
#
{
dcl_specials
,
dcl_functions
,
dcl_common
,
dcl_conversions
}
=
dcl_mod
#
{
dcl_specials
,
dcl_functions
,
dcl_common
}
=
dcl_mod
#
(
icl_functions
,
last_index
,
(
var_heap
,
type_var_heap
,
expr_heap
))
=
collect_specialized_functions
dcl_specials
.
ir_from
dcl_specials
.
ir_to
dcl_functions
(
icl_functions
,
first_free_index
,
(
var_heap
,
type_var_heap
,
expr_heap
))
...
...
frontend/checksupport.icl
View file @
ecc442f5
...
...
@@ -519,9 +519,9 @@ where
remove_macro_defs_from_symbol_table
level
from_index
to_index
defs
symbol_table
|
from_index
==
to_index
=
(
defs
,
symbol_table
)
#
!
def
=
defs
.
[
module_index
,
from_index
]
id_info
=
(
toIdent
def
).
id_info
entry
=
s
readPtr
id_info
symbol_table
#
(
def
,
defs
)
=
defs
!
[
module_index
,
from_index
]
id_info
=
(
toIdent
def
).
id_info
(
entry
,
symbol_table
)
=
readPtr
id_info
symbol_table
|
level
==
entry
.
ste_def_level
=
remove_macro_defs_from_symbol_table
level
(
inc
from_index
)
to_index
defs
(
symbol_table
<:=
(
id_info
,
entry
.
ste_previous
))
=
remove_macro_defs_from_symbol_table
level
(
inc
from_index
)
to_index
defs
symbol_table
...
...
@@ -533,8 +533,8 @@ where
remove_fun_defs_from_symbol_table
level
from_index
to_index
defs
symbol_table
|
from_index
==
to_index
=
(
defs
,
symbol_table
)
#
!
def
=
defs
.
[
from_index
]
id_info
=
(
toIdent
def
).
id_info
#
(
def
,
defs
)
=
defs
!
[
from_index
]
id_info
=
(
toIdent
def
).
id_info
#
(
entry
,
symbol_table
)
=
readPtr
id_info
symbol_table
|
level
==
entry
.
ste_def_level
=
remove_fun_defs_from_symbol_table
level
(
inc
from_index
)
to_index
defs
(
symbol_table
<:=
(
id_info
,
entry
.
ste_previous
))
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment