<commit_before>
#include "CShader.h"


CShader * CompileVertFragShader(string const VertexShaderSource, string const FragmentShaderSource)
{
	ion::GL::VertexShader * VertexShader = new ion::GL::VertexShader;
	VertexShader->Source(VertexShaderSource);
	if (! VertexShader->Compile())
		std::cerr << "Failed to compile vertex shader!" << std::endl << VertexShader->InfoLog() << std::endl;

	ion::GL::FragmentShader * FragmentShader = new ion::GL::FragmentShader;
	FragmentShader->Source(FragmentShaderSource);
	if (! FragmentShader->Compile())
		std::cerr << "Failed to compile fragment shader!" << std::endl << FragmentShader->InfoLog() << std::endl;

	ion::GL::Program * Program = new ion::GL::Program;
	Program->AttachShader(VertexShader);
	Program->AttachShader(FragmentShader);
	Program->Link();
	Program->InfoLog();
	
	return Program;
}
<commit_msg>Add display of program link output in event of linker stage failure<commit_after>
#include "CShader.h"


CShader * CompileVertFragShader(string const VertexShaderSource, string const FragmentShaderSource)
{
	ion::GL::VertexShader * VertexShader = new ion::GL::VertexShader;
	VertexShader->Source(VertexShaderSource);
	if (! VertexShader->Compile())
		std::cerr << "Failed to compile vertex shader!" << std::endl << VertexShader->InfoLog() << std::endl;

	ion::GL::FragmentShader * FragmentShader = new ion::GL::FragmentShader;
	FragmentShader->Source(FragmentShaderSource);
	if (! FragmentShader->Compile())
		std::cerr << "Failed to compile fragment shader!" << std::endl << FragmentShader->InfoLog() << std::endl;

	ion::GL::Program * Program = new ion::GL::Program;
	Program->AttachShader(VertexShader);
	Program->AttachShader(FragmentShader);
	if (! Program->Link())
		std::cerr << "Failed to link vertex/fragment program!" << std::endl << Program->InfoLog() << std::endl;
	
	return Program;
}

{'fraction_non_alphanumeric': 0.15271195365982096, 'fraction_numerical': 0.0, 'mean_word_length': 5.690140845070423, 'pattern_counts': {'":': 0, '<': 43, '<?xml version=': 0, '>': 23, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4970212', 'n_tokens_mistral': 579, 'n_tokens_neox': 540, 'n_words': 124}