Завершить разделение SDK и внешних проектов

This commit is contained in:
Александр Петров
2026-09-16 10:01:43 +03:00
parent 0e74aaa7ee
commit 2e7ffd64a4
1965 changed files with 373 additions and 201393 deletions
+16
View File
@@ -114,6 +114,22 @@ class Integration(unittest.TestCase):
self.assertEqual(value['bank'],1)
self.assertEqual(value['window'],1)
def test_04a_absolute_variable_is_not_confused_with_code(self):
source=self.work/'absolute.c'
source.write_text('''
__at (0x4000) volatile unsigned char scratch;
int main(void) { scratch = 42; return 0; }
''')
self.build('absolute',[source],'--src-debug')
model=self.model('absolute')
scratch=next(v for v in model.variables if v['name']=='scratch')
self.assertEqual(scratch['section'],'_ABS')
self.assertEqual(scratch['logical_address'],0x4000)
self.assertEqual(scratch['window'],1)
self.assertIsNone(scratch['bank'])
with self.assertRaisesRegex(ValueError,'секция'):
model.location(0x4000)
def test_05_stale_sources_and_corrupt_artifacts(self):
source=self.work/'stale.c'
source.write_text('int main(void) {return 42;}')