Maguyva의 C 지원: 시스템·임베디드 코드를 위한 호출 그래프
C에서는 호출 그래프가 곧 아키텍처입니다. 에이전트는 편집하기 전에 그것부터 읽어야 합니다.
확장자
.c, .h
Fortran 코드베이스는 오래되고, 크고, 소프트웨어 팀이 아니라 도메인 전문가가 작성한 경우가 많습니다. SOLVE, Solve, solve라는 이름의 루틴은 모두 같은 루틴입니다. 모듈은 수백 개의 파일에서 공유되고, 내장 프로시저 라이브러리도 커서 단순한 호출 목록은 대부분 SQRT, SUM, WRITE로 채워집니다.
grep만 쓰는 에이전트는 이 잡음에 묻혀 버립니다. Maguyva는 먼저 구조를 건넵니다. 어떤 프로그램 단위가 있고, 어떤 모듈을 쓰며, 어떤 사용자 루틴이 서로를 호출하는지입니다.
Maguyva는 고정 형식과 자유 형식 소스(.f, .for, .ftn, .f90, .f95, .f03, .f08)를 지원합니다. 함수와 서브루틴은 호출 가능한 심볼로 추출되고, 파생 타입은 구조적 검색에서 타입 정의로 선택할 수 있습니다.
심볼 매칭은 Fortran 자체의 규칙에 맞춰 대소문자를 구분하지 않습니다. 임포트 관계는 use와 include에서 만들어지며, 키워드를 떼어 내고 모듈 이름을 그래프에 저장합니다. 호출, 읽기, 대입, 타입 참조, 그리고 확장된 파생 타입의 상속도 모두 그래프에 들어갑니다.
관계 필터는 약 165개의 내장 프로시저(I/O 문, 수학, 배열, 문자열, 타입 변환, 비트 조작 루틴)를 제외하므로, 남는 엣지는 여러분의 코드를 가리킵니다.
compute_flux를 호출하는 서브루틴은 무엇이고, 각각 어떤 모듈을 쓰나요?” (find_symbol, 그다음 dependency_search incoming)get_task_context)constants 모듈을 사용하는 프로그램 단위를 모두 찾아 줘.” (use constants에 대해 text_pattern_search, 그다음 find_symbol)structural_search에서는 functions 프리셋을 사용하세요. methods 프리셋은 Fortran 노드를 선택하지 않습니다.WRITE나 OPEN이 필요하다면 text_pattern_search를 사용하세요.빠른 시작으로 저장소를 연결한 다음, 호환성 페이지에서 전체 지원 매트릭스를 확인하세요. Fortran이 C 글루 코드와 함께 있다면 C 가이드도 읽어 보세요.
가장 적합한 경우
에이전트 워크플로
엔진 세부 정보
유용한 MCP 진입점
서브루틴, 함수, 모듈 이름으로 시작하세요. Fortran처럼 매칭은 대소문자를 구분하지 않습니다.
수치 변경 전에 솔버나 공유 모듈 루틴에 incoming 탐색을 써서 모든 호출자를 확인하세요.
“솔버 루프에서 경계 조건이 어떻게 적용되는지 추적해 줘” 같은 프롬프트에 쓰세요.
관련 가이드
C에서는 호출 그래프가 곧 아키텍처입니다. 에이전트는 편집하기 전에 그것부터 읽어야 합니다.
확장자
.c, .h
폭넓은 언어 지원이 단순한 통계 수치를 넘어 현대화 도구로 거듭나는 지점입니다.
확장자
.cbl, .cob, .cpy