91 líneas
3.4 KiB
Markdown
91 líneas
3.4 KiB
Markdown
# Changelog
|
|
|
|
Todos los cambios notables en este proyecto serán documentados en este archivo.
|
|
|
|
El formato está basado en [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [Unreleased]
|
|
|
|
### Agregado
|
|
- Soporte para más optimizaciones
|
|
- Mejores mensajes de error
|
|
- Soporte para más extensiones de C
|
|
|
|
### Cambiado
|
|
- Mejorado rendimiento del parser
|
|
- Optimizada generación de código
|
|
|
|
### Corregido
|
|
- Problemas de compilación en sistemas de 32 bits
|
|
- Manejo de errores en el enlazador
|
|
|
|
## [0.1.1] - 2025-08-23
|
|
|
|
### Agregado
|
|
- ✅ **Operadores compuestos**: Implementados +=, -=, *=, /= con soporte completo
|
|
- ✅ **Operadores bitwise**: Agregados &, |, ^, ~, <<, >> con precedencia correcta
|
|
- ✅ **Suite de tests**: Tests de integración completamente funcionales (10/10 pasando)
|
|
- ✅ **Benchmarks**: Sistema de benchmarks con métricas de rendimiento
|
|
- ✅ **Soporte biblioteca**: Configuración dual binario/biblioteca para tests
|
|
- ✅ **Recursión mejorada**: Soporte completo para funciones recursivas (factorial, fibonacci)
|
|
|
|
### Cambiado
|
|
- 🔧 **Limpieza de código**: Eliminados todos los warnings de compilación (32 → 0)
|
|
- 📝 **Documentación actualizada**: README con limitaciones actuales clarificadas
|
|
- 🏗️ **Arquitectura mejorada**: Mejor separación de módulos con lib.rs
|
|
|
|
### Corregido
|
|
- 🐛 **Headers locales**: Eliminada dependencia del directorio include/ local
|
|
- 🔨 **Patrones inalcanzables**: Corregidos match patterns redundantes
|
|
- ⚠️ **Imports sin usar**: Limpiados todos los imports y variables no utilizados
|
|
|
|
### Removido
|
|
- ❌ **Directorio include/**: Eliminado directorio include/ y referencias obsoletas
|
|
|
|
## [0.1.0] - 2025-08-21
|
|
|
|
### Agregado
|
|
- Implementación inicial del compilador ALECC
|
|
- Soporte para arquitecturas i386, AMD64 y ARM64
|
|
- Lexer completo para C/C++
|
|
- Parser básico para programas simples
|
|
- Generador de código para las tres arquitecturas
|
|
- Sistema de optimización con múltiples niveles (-O0 a -O3, -Os, -Oz)
|
|
- Enlazador con soporte para bibliotecas estáticas y dinámicas
|
|
- Compatibilidad básica con opciones de GCC
|
|
- Interfaz de línea de comandos completa
|
|
- Sistema de preprocesado básico
|
|
- Soporte para inclusión de archivos de cabecera
|
|
- Manejo de errores robusto
|
|
- Tests de integración y benchmarks
|
|
- Documentación completa en README.md
|
|
- Scripts de construcción automatizada
|
|
- Configuración para CI/CD con GitHub Actions
|
|
|
|
### Características Principales
|
|
- **Alto Rendimiento**: Escrito en Rust para máxima eficiencia
|
|
- **Seguridad**: Manejo seguro de memoria y detección temprana de errores
|
|
- **Compatibilidad**: Compatible con opciones de línea de comandos de GCC
|
|
- **Multiplataforma**: Soporte nativo para múltiples arquitecturas
|
|
- **Optimización**: Sistema avanzado de optimización de código
|
|
|
|
### Limitaciones Conocidas
|
|
- Soporte limitado para características avanzadas de C++
|
|
- Preprocesador simplificado
|
|
- Algunas optimizaciones están en desarrollo
|
|
- Compatibilidad parcial con extensiones específicas de GCC
|
|
|
|
### Documentación
|
|
- README.md completo con ejemplos de uso
|
|
- Documentación de API en código
|
|
- Ejemplos de programas de prueba
|
|
- Guía de contribución
|
|
|
|
### Herramientas de Desarrollo
|
|
- Makefile para tareas comunes
|
|
- Scripts de construcción automatizada
|
|
- Configuración de EditorConfig
|
|
- Benchmarks de rendimiento
|
|
- Tests de integración completos
|